Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 禁用表单提交上的提交按钮时出现问题_Javascript_Jquery_Html_Forms_Javascript Events - Fatal编程技术网

Javascript 禁用表单提交上的提交按钮时出现问题

Javascript 禁用表单提交上的提交按钮时出现问题,javascript,jquery,html,forms,javascript-events,Javascript,Jquery,Html,Forms,Javascript Events,问候 我正在使用jquery disable on submit插件,但我有一个问题。如果我禁用“提交”按钮,它们不会传回服务器,因此我无法确定按下了哪个按钮。这正常吗?我能做些什么吗 我真的不想重新设置我的网站,所以我必须在表单提交上设置一个变量,以告知按下了哪个按钮 有什么想法吗?您可以通过jquery进行提交,然后禁用按钮: <input type="submit" value="do it!" onclick="$('#mainform').submit(); $(this).at

问候

我正在使用jquery disable on submit插件,但我有一个问题。如果我禁用“提交”按钮,它们不会传回服务器,因此我无法确定按下了哪个按钮。这正常吗?我能做些什么吗

我真的不想重新设置我的网站,所以我必须在表单提交上设置一个变量,以告知按下了哪个按钮


有什么想法吗?

您可以通过jquery进行提交,然后禁用按钮:

<input type="submit" value="do it!" onclick="$('#mainform').submit(); $(this).attr('disabled','disabled' ); $('#pleasewait').show();" />
或者,您可以将按钮.hide()隐藏,或者在单击按钮后设置一个非功能性的onClick()处理程序并将其样式设置为禁用。


此方法隐藏按钮而不是禁用按钮,并以编程方式插入禁用的标记,使其显示为与禁用提交按钮一样。效果很好。

我刚刚发现了一个解决方法:


$(文档).ready(函数(){
$(“#sendSearch”)。单击(函数(){
$('#loadingDiv').show();
$('#sendSearch').attr(“禁用”、“禁用”);
//这两条线是解决方法
这个.form.submit();
返回true;
});
});
简单一点:)


是的

是的,它是,否则我不会发布它。在哪个浏览器中不工作?版本?+1不确定为什么会被否决,但我认为这是最好的,因为它与JavaScription一起使用或不使用JavaScription。您是否在ASP.NET web表单中尝试过这一点?我不这么认为。是否应该在结尾处返回false?/所以它也不会继续通过代码路径提交。我不需要提供post参数来完成这个ajax调用吗?
$.ajax({
url: "someurl",
type:"POST",
cache: false,
dataType: "json",
success:gotIt,
async:true,
timeout:240000,
error:ajaxError,
data:$("#mainform").serialize()
}); 
<script type="text/javascript">
    $(document).ready(function() {
        $("#sendSearch").click(function() {
            $('#loadingDiv').show();
            $('#sendSearch').attr("disabled", "disabled");

            // these two lines are the workaround
            this.form.submit();
            return true;
        });
    });
</script>
var formid="#id-form-if-exists"; //Put here the id if exists
$("form"+formid).submit(function(){$("form"+formid+" input").attr("disabled",false);});