Javascript 单击HTML表单提交按钮调用一个函数。提交表格之前,功能是否始终完成?
我有一个HTML表单。其中一个表单字段值由JavaScript函数设置。单击submit按钮时调用JavaScript函数。我能否确保函数总是在提交表单之前及时完成并设置字段值 编辑:这是要求的代码Javascript 单击HTML表单提交按钮调用一个函数。提交表格之前,功能是否始终完成?,javascript,html,forms,Javascript,Html,Forms,我有一个HTML表单。其中一个表单字段值由JavaScript函数设置。单击submit按钮时调用JavaScript函数。我能否确保函数总是在提交表单之前及时完成并设置字段值 编辑:这是要求的代码 $('#submitbutton').click(function () { createWholeArray(); }); function createWholeArray() { var tem
$('#submitbutton').click(function () {
createWholeArray();
});
function createWholeArray() {
var templateString = width + " " + height + "\n";
for (var x = 0; x < width; x++) {
for (var y = 0; y < height; y++) {
if ($('#' + x + '-' + y).hasClass('selected')) {
templateString = templateString.concat("\n" + x + " " + y);
}
}
}
document.getElementById('templatestring').value = templateString;
}
$('submitbutton')。单击(函数(){
createWholeArray();
});
函数createWholeArray(){
var templateString=width+“”+height+“\n”;
对于(变量x=0;x
是的,您可以,在实际提交(导致重新加载页面)完成之前触发submit
事件。您甚至可以阻止表单与脚本一起发送。请注意,如果您希望在浏览器默认表单发送完成之前完成操作,则只能确定
事实上,只有在该函数中使用synchron操作时,才会出现这种情况。如果使用异步函数,则必须防止现在提交表单,并从该函数的回调中提交表单
请注意使用表单上的submit
事件,而不是按钮上的click
事件(如果适用)。它将确保在发送表单时,通过按enter键或其他可能的方式发送表单,也会调用您的函数
正如MarkP在评论中指出的那样,请记住,用户可能禁用了javascript,这可能会导致您的情况出现意外结果。是的,您可以,在实际提交(导致重新加载页面)完成之前触发
submit
事件。您甚至可以阻止表单与脚本一起发送。请注意,如果您希望在浏览器默认表单发送完成之前完成操作,则只能确定
事实上,只有在该函数中使用synchron操作时,才会出现这种情况。如果使用异步函数,则必须防止现在提交表单,并从该函数的回调中提交表单
请注意使用表单上的submit
事件,而不是按钮上的click
事件(如果适用)。它将确保在发送表单时,通过按enter键或其他可能的方式发送表单,也会调用您的函数
正如MarkP在评论中指出的那样,请记住,用户有可能禁用了javascript,这可能会在您的情况下导致意外的结果。做一件事。
将submit按钮更改为normal按钮,并将click事件发送给他
通过点击普通按钮手动提交您的页面。
我在我的项目中也做了同样的事情,下面是代码
$("#SignUpButton").click(function()
{
$('#loginForm').attr('method','post');
$('#loginForm').attr('action','SignupServlet');
$('#loginForm').submit();
});
做一件事。
将submit按钮更改为normal按钮,并将click事件发送给他
通过点击普通按钮手动提交您的页面。
我在我的项目中也做了同样的事情,下面是代码
$("#SignUpButton").click(function()
{
$('#loginForm').attr('method','post');
$('#loginForm').attr('action','SignupServlet');
$('#loginForm').submit();
});
你是如何截取提交的?给我们看一个小代码:)不,你不能确定。你是如何截取提交的?给我们看一点代码:)不,你不能确定。@manta如果没有javascript已经在处理表单,那么我们只讨论默认的浏览器行为,使用submit事件将完成他希望它做的事情(将输入字段的值设置为某个值)。如果用户的浏览器禁用了JavaScript,则不会触发该功能,但会触发提交事件(假设这是在标记中设置的。@MarkP fair point,我假设启用了javascript,因为没有它,函数将无法执行任何操作,但值得一提的是要记住这一点!@manta如果没有javascript已经在处理表单,那么我们只讨论默认的浏览器行为,使用submit事件即可他期望它做什么(将输入字段的值设置为某个值)。如果用户的浏览器禁用了JavaScript,该函数将不会启动,但提交事件将启动(假设这是在标记中设置的。@MarkP fair point,我假设启用了javascript,因为如果没有它,函数将无法执行任何操作,但值得一提的是要记住这一点!