3

问候

我在提交插件上使用 jquery 禁用,但我有一个问题。如果我禁用提交按钮,它们不会被传递回服务器,所以我无法判断按下了哪个按钮。这是正常的吗?我能做些什么吗?

我真的不想改造我的网站,所以我必须在表单提交时设置一个变量来判断按下了哪个按钮。

有任何想法吗 ?

4

4 回答 4

3

如何禁用 Web 表单的提交按钮

此方法隐藏按钮而不是禁用它,并以编程方式插入禁用的 <button> 标记,使其看起来就像提交按钮被禁用一样。效果很好。

于 2009-03-19T12:17:02.280 回答
0

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

<input type="submit" value="do it!" onclick="$('#mainform').submit(); $(this).attr('disabled','disabled' ); $('#pleasewait').show();" />

编辑:我忘记了 form.submit() 不是异步的。您可以改为执行 ajax 请求:

$.ajax({
url: "someurl",
type:"POST",
cache: false,
dataType: "json",
success:gotIt,
async:true,
timeout:240000,
error:ajaxError,
data:$("#mainform").serialize()
}); 

或者您可以 .hide() 按钮,或者在单击它​​后设置一个非功能性的 onClick() 处理程序并将其样式设置为禁用。

于 2009-03-19T11:54:31.867 回答
0

这是我刚刚在jQuery 论坛中找到的解决方法:

<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>
于 2009-05-14T08:19:30.913 回答
0

更简单:)

var formid="#id-form-if-exists"; //Put here the id if exists
$("form"+formid).submit(function(){$("form"+formid+" input").attr("disabled",false);});

是的

于 2010-04-13T14:13:58.643 回答