Javascript 和 JSP 用于 2 个提交按钮
Javascript and JSP for 2 buttons with submit
还不是真正的javascript,希望你能帮我解决这个可能是新手的问题。
我正在尝试使用第二个按钮扩展现有的工作 jsp 页面。它的类型是提交。
我发现了一些半模拟的问题和答案,但我只是不让它工作。
我为这个例子添加的按钮是 button.doebi。它们在浏览器的屏幕上显示得很好。
在我的 jsp 文件中:
<td colspan="4" align="right">
<button id="sysBlaBlacControlSearchSubmit" type="submit" value="normal" class="standardButton">
<bean:message key="button.search" />
</button>
<button id="sysBlaBlaControlSearchReset" type="reset" class="standardButton">
<bean:message key="button.reset" />
</button>
<button id="sysBlaBlaControlSearchDoebi" type="submit" name="doebi" value="doebi" class="standardButton">
<bean:message key="button.doebi" />
</button>
</td>
在我的 js 文件中:
$('#SysBlaBlaControlSearchForm').submit(function(e) {
e.preventDefault();
sendAjaxForm('SysBlaBlaSearch', '/sysblabla/sysBlaBlaSearch.do', 'searchSysblabla', function (result) {
refreshTableData(systematicControlSearchResultTable, result);
sendAjaxGET('/blablabla/blablabla.do', 'getblablablaSearchWarning', undefined, function (result) {
$('div#SysBlaBlaBlaSearchWarning').text(result.value);
});
});
});
现在我想看到 按钮已被按下,因为显然这两个按钮都在 .submit
中处理
在这里找到了像 if (request.getParameter("xxx"))
这样的例子,我喜欢在 js 文件中像这样注入我的代码:
$('#SysBlaBlaControlSearchForm').submit(function(e) {
if (request.getParameter("doebi") == null) {
e.preventDefault();
console.warn("NOT inside doebi click");
sendAjaxForm('SysBlaBlaSearch', '/sysblabla/sysBlaBlaSearch.do', 'searchSysblabla', function (result) {
...
} else {
console.warn("inside doebi click");
}
但问题是 "request" 没有被编译器找到。
我不知道请求指向哪里。
当我在浏览器中执行代码并进行检查时,请求出现错误。
我不得不用 blabla 伪装真正的方法名称,对此感到抱歉。
您可以使用 click
事件让当前按钮被点击,然后在 submit
上您可以检查哪个按钮被点击并执行与该按钮相关的进一步操作。
演示代码 :
var $submit = null;
var $button = $('#SysBlaBlaControlSearchForm').find('button');
$('#SysBlaBlaControlSearchForm').submit(function(e) {
e.preventDefault();
//checking the value of button click
if ($submit.name == "normal") {
//normal buton is clicked
console.warn(" inside normal click");
//put your ajax code here
} else if ($submit.name == "doebi") {
//inside doebii
console.warn("inside doebi click");
//put your ajax code here
} else {
console.warn("reset button clicked");
}
});
//when button is clicked
$button.click(function(event) {
//putting current button clicked reference in variable $submit
$submit = this;
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form id="SysBlaBlaControlSearchForm">
<button id="sysBlaBlacControlSearchSubmit" type="submit" name="normal" class="standardButton">
<bean:message key="button.search" />Normal
</button>
<button id="sysBlaBlaControlSearchReset" type="reset" class="standardButton">
<bean:message key="button.reset" /> Reset
</button>
<button id="sysBlaBlaControlSearchDoebi" type="submit" name="doebi" namename="doebi" class="standardButton">
<bean:message key="button.doebi" />Doebi
</button>
</form>
还不是真正的javascript,希望你能帮我解决这个可能是新手的问题。 我正在尝试使用第二个按钮扩展现有的工作 jsp 页面。它的类型是提交。 我发现了一些半模拟的问题和答案,但我只是不让它工作。 我为这个例子添加的按钮是 button.doebi。它们在浏览器的屏幕上显示得很好。
在我的 jsp 文件中:
<td colspan="4" align="right">
<button id="sysBlaBlacControlSearchSubmit" type="submit" value="normal" class="standardButton">
<bean:message key="button.search" />
</button>
<button id="sysBlaBlaControlSearchReset" type="reset" class="standardButton">
<bean:message key="button.reset" />
</button>
<button id="sysBlaBlaControlSearchDoebi" type="submit" name="doebi" value="doebi" class="standardButton">
<bean:message key="button.doebi" />
</button>
</td>
在我的 js 文件中:
$('#SysBlaBlaControlSearchForm').submit(function(e) {
e.preventDefault();
sendAjaxForm('SysBlaBlaSearch', '/sysblabla/sysBlaBlaSearch.do', 'searchSysblabla', function (result) {
refreshTableData(systematicControlSearchResultTable, result);
sendAjaxGET('/blablabla/blablabla.do', 'getblablablaSearchWarning', undefined, function (result) {
$('div#SysBlaBlaBlaSearchWarning').text(result.value);
});
});
});
现在我想看到 按钮已被按下,因为显然这两个按钮都在 .submit
中处理在这里找到了像 if (request.getParameter("xxx"))
这样的例子,我喜欢在 js 文件中像这样注入我的代码:
$('#SysBlaBlaControlSearchForm').submit(function(e) {
if (request.getParameter("doebi") == null) {
e.preventDefault();
console.warn("NOT inside doebi click");
sendAjaxForm('SysBlaBlaSearch', '/sysblabla/sysBlaBlaSearch.do', 'searchSysblabla', function (result) {
...
} else {
console.warn("inside doebi click");
}
但问题是 "request" 没有被编译器找到。 我不知道请求指向哪里。
当我在浏览器中执行代码并进行检查时,请求出现错误。 我不得不用 blabla 伪装真正的方法名称,对此感到抱歉。
您可以使用 click
事件让当前按钮被点击,然后在 submit
上您可以检查哪个按钮被点击并执行与该按钮相关的进一步操作。
演示代码 :
var $submit = null;
var $button = $('#SysBlaBlaControlSearchForm').find('button');
$('#SysBlaBlaControlSearchForm').submit(function(e) {
e.preventDefault();
//checking the value of button click
if ($submit.name == "normal") {
//normal buton is clicked
console.warn(" inside normal click");
//put your ajax code here
} else if ($submit.name == "doebi") {
//inside doebii
console.warn("inside doebi click");
//put your ajax code here
} else {
console.warn("reset button clicked");
}
});
//when button is clicked
$button.click(function(event) {
//putting current button clicked reference in variable $submit
$submit = this;
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form id="SysBlaBlaControlSearchForm">
<button id="sysBlaBlacControlSearchSubmit" type="submit" name="normal" class="standardButton">
<bean:message key="button.search" />Normal
</button>
<button id="sysBlaBlaControlSearchReset" type="reset" class="standardButton">
<bean:message key="button.reset" /> Reset
</button>
<button id="sysBlaBlaControlSearchDoebi" type="submit" name="doebi" namename="doebi" class="standardButton">
<bean:message key="button.doebi" />Doebi
</button>
</form>