2011-12-07 61 views
0

我这个小码通过AJAX发布:防止提交,直到输入变化

$('#submit').click(function() { 
    var myName = $('#name').val(); 
    var myContent = $('#content').val(); 

    // ajax 
    $.ajax({ 
     type: 'post', 
     url: '/ajax.process.php', 
     data: { 
      post_name: myName, 
      post_content: myContent 
     }, 
     dataType: 'json', 
     success: function (data) { 
     alert(OK); 
     } 
    }); // end ajax 
}); 

如何防止或直到我输入变化禁用。点击,我的意思是,直到用户做一些修改?

+0

你想允许AJAX请求,如果** **任何'input'发生了变化,或** **所有的'input'领域有哪些变化? –

+0

当然有任何投入! :) – greenbandit

回答

1

你可以更换类型=“按钮”提交和使用的用户输入的变化阿贾克斯,如:

 
//make input type="submit" to 
<input type="button".... /> 

$("yourInputId").blur(function() { 
    $.ajax({}); // use ur ajax here 
}); 
0

您可以在顶部var canSubmit = false;上设置一个标志,并在文本字段的$.change()事件中将其更改为true。

1

最好的,最明显的,解决办法是设置disabled属性上的提交按钮开始(input type="submit" name="submit" id="submit" disabled>),然后当用户改变的任何输入你感兴趣的值删除属性($('#submit').removeAttr('disabled');)。

0

可以隐藏提交按钮,然后可以显示他们,一旦你投入TEH变化的方法被称为像

$("input").change(function(){ 
    $("input[type=submit]").show() 
});