के साथ सबमिट किया गया है, मेरे पास पूर्वावलोकन बटन है। जब उपयोगकर्ता प्रेस पूर्वावलोकन करता है, तो पीडीएफ फ़ाइल को फॉर्म में डेटा दिखाने के लिए फॉर्म को नए टैब पर सबमिट किया जाता है। मैं एक कस्टम SubmitLink का उपयोग करें कि SubmitResourceLinkलक्ष्य पृष्ठ को रीफ्रेश किया जाता है यदि फॉर्म के बाद AJAX का उपयोग लक्ष्य = _blank
public abstract class SubmitResourceLink extends SubmitLink implements IResourceListener {
private final IResource resource;
@Override
public final void onResourceRequested() {
Attributes a = new Attributes(RequestCycle.get().getRequest(), RequestCycle.get().getResponse(), null);
resource.respond(a);
}
रूप
new SubmitResourceLink("previewBtn", form, new JasperReportsResource() {
private static final long serialVersionUID = -2596569027102924489L;
@Override
public byte[] getData(Attributes attributes) {
return control.getExportPreviewByteStream(estimateModel.getObject());
}
}) {
private static final long serialVersionUID = 1L;
@Override
protected String getTriggerJavaScript() {
String js = super.getTriggerJavaScript();
js = "document.getElementById('" + form.getMarkupId() + "').target='_blank';" + js;
return js;
}
@Override
public void onSubmit() {
form.add(AttributeModifier.append("target", Model.of("_blank")));
processInputs(form);
onResourceRequested();
}
}.setDefaultFormProcessing(false);
जब मैं पूर्वावलोकन प्रेस पर लागू करने के लिए, एक नया टैब opend है। लेकिन जब मैं किसी भी AJAX घटक में इनपुट करता हूं (उदा: ऑटोकंपलेटटेक्स्टफिल्ड), AJAX रेपॉन्स डेटा xml: <ajax-response><redirect>....</redirect></ajax-response>
और पेज रीफ्रेश करें। अब, मैं प्रेस पूर्वावलोकन के बाद चाहता हूं, मैं अभी भी वर्तमान फॉर्म normaly का उपयोग करता हूं। धन्यवाद।
anwser के लिए धन्यवाद। मैं समझता हूं कि विकेट ऐसा क्यों करता है। लेकिन मुझे नहीं पता कि मेरी समस्या का समाधान कैसे करें। – luanvu
एक पॉपअप विंडो का उपयोग कर एक विकल्प है? एक नया टैब खोलने से यह बहुत आसान होगा। कुछ ऐसा होना चाहिए: SubmitLink # setPopupSettings (...) –