2012-09-12 36 views
0

当我通过jQuery提交表单时,像这样:jQuery('#myForm').submit();
我不想发送一些指定的div内的信息(我的意思是所有输入字段,select元素,textarea元素等不允许发送到服务器),但我不知道要阻止div与所有者表单一起提交。
你能帮我解决吗?非常感谢。从表单提交jQuery排除div?


谢谢大家的快速回复。我试图将该div中的所有输入字段的“disabled”属性设置为false,但是当我在服务器上再次检查它时,其他一些字段(如select,textarea)仍然被提交。我想我应该禁用它们。有没有什么办法可以在不禁用各种输入元素的情况下删除或“隐藏/禁用”整个div?

回答

3

这样的事情应该这样做:

$('div#excludeMyInputs input').prop("disabled",true); 
$('#myform').submit(); 
$('div#excludeMyInputs input').prop("disabled",false); 
1

我想说如果你有一个带有输入的表单并且你不想把这些输入的值发送到某个地方,你可能会错误地解决它。

但是,你可以只是把这些表单元素#myForm表单元素之外(例如,在第二种形式叫#myForm2),然后这些输入将由jQuery('#myForm').submit();被忽略,但它们仍然会在呈现页。

1

此前post可能会帮助你。它看起来像你最好的选择将是禁用或致电.submit()之前删除div中的表单元素

1

,你可以使用$阿贾克斯功能来选择要发送的数据:

$(document).on('submit','#myForm',function(e) { 
    e.preventDefault(); 
    $.ajax({ 
    url:$(this).attr('action'), 
    type:'post', 
    data:{ 
     input1:$('#input1').val(), 
     input2:$('#input2').val() 
     // etc etc 
    }, 
    success:function(data) { 
     console.log(data); 
    }, 
    error:function(jqXHR, textStatus, errorThrown) { 
     console.log(errorThrown); 
    } 
    }); 
});