禁用提交按钮,直到隐藏字段包含内容

时间:2010-12-30 20:58:10

标签: javascript jquery forms validation

我有一个隐藏字段,当用户执行特定的AJAX调用时会填充该字段。我想找到一种方法来禁用提交按钮,直到隐藏字段填充内容。

   <input  type="hidden" name="lat" id="t1">
    <input type="hidden" name="long" id="t2"> 

5 个答案:

答案 0 :(得分:2)

只需将其设置为禁用,并在您设置隐藏值的同一位置启用它。我认为你正试图让它变得更难。

答案 1 :(得分:1)

$('#yourForm').submit(function() {
    if ( !$('#t1')[0].value && !$('#t2')[0].value ) { return false; }
});

答案 2 :(得分:0)

最初设置:

<input id="GO" type="submit" style="display: none" />

在你的ajax电话之后:

$('#GO').show();

答案 3 :(得分:0)

试试这个:

$('input[type="submit"]').attr('disabled', 'disabled');

$('#t1, #t2').change(function() {
    var enable = $('#t1').val() && $('#t2').val();
    $('input[type="submit"]').attr('disabled', enable ? null : 'disabled');
});

确保您的Ajax调用触发隐藏输入的更改事件。

答案 4 :(得分:0)

我通常会做以下事情:

使用我的其余JavaScript:

$.ajax({ //ajax options go here
    success: function(result) {
        //Do the rest of your success stuff here.

        $("#submit").removeAttr("disabled");
    }
});

然后,在我的HTML标记中:

<button type="submit" name="submit" id="submit" disabled="true">Submit</button>
相关问题