2012-09-12 64 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); 
    } 
    }); 
});