Я новичок в jquery, чтобы извинить за простой вопрос. Я пытаюсь представить форму, которая имеет две кнопки отправки...
<input id="submitBtn" name="action" value="view" type="submit" class="ym-button ym-primary" value="<spring:message code="button.view"/>" title="<spring:message code="button.view" />" />
<input id="saveBtn" name="action" value="save" type="submit" class="ym-button ym-warning" value="<spring:message code="button.save"/>" title="<spring:message code="button.save" />" />
Как вы видите, у меня есть кнопка с именем submitBtn и saveBtn. Команда submitBtn возвращает html, а saveBtn возвращает pdf.
Когда sendBtn попал, я хотел бы, чтобы форма была отправлена нормально и имела нагрузку ответа в текущем окне. Но когда удаляется saveBtn, я хотел бы, чтобы текущее окно оставалось как есть и загрузило PDF в новое всплывающее окно.
До сих пор я пробовал...
$("#submitBtn").click(function(){
if ($("form[name='shortsAndOversDailyForm']").valid()) {
return true;
}
return false;
});
$("#saveBtn").click(function(){
if ($("form[name='shortsAndOversDailyForm']").valid()) {
// specify a unique target name
var target = 'windowFormTarget';
// open a new window and name it
window.open('', target, 'width=1400,height=900');
// set the target of the form to be
// the window name
this.setAttribute('target', target);
// allow the form to be submitted normally
return true;
}
return false;
});
Проблема заключается в том, что когда я нажимаю кнопку "Сохранить", открывается новое окно без содержимого, и файл pdf загружается в окно, где была отправлена форма.
Может ли кто-нибудь помочь в том, как это исправить, поэтому я могу загрузить pdf файл во всплывающем окне?
благодаря
this
кнопка и кнопки не имеют целей, форма делает.
this.setAttribute('target', target);
поэтому вы, вероятно, захотите this.form
this.form.setAttribute('target', target);
или с помощью jQuery
$(this).closest("form").attr('target', target);
$("#saveBtn").click(function(){
var form = $("form[name='shortsAndOversDailyForm']");
if (form.valid()) {
var target = 'windowFormTarget';
window.open('', target, 'width=1400,height=900');
//this.form.setAttribute('target', target);
form.attr('target', target);
return true;
}
return false;
});