2011-10-24 3 views
3

誰かが私が私が(それが隠されていたか否か)削除したくないというのJavaScript code to remove hidden form fields from submissioncode that ignores a certain fieldを見つける助け:しかしJavaScriptはすべての隠し要素を削除するが、1人の

$("form").submit(function() { 
$(this).find(":hidden").remove(); // hide hidden elements before submitting 
}); 

:not(input[name=csrfmiddlewaretoken]) 

、私は私の人生のために一緒にこれらを置く方法を理解することはできません。私はそれが基本的なJavaScriptの質問だと確信していますが、私はこれらを一緒にまとめることはできません。

隠しフォームのエントリをすべて削除する方法を知っている人は誰でもという名前ではありません。csrfmiddlewaretoken?もしそうなら、本当に感謝しています。

ありがとうございます。

答えて

10
$(this).find(":hidden").not('input[name=csrfmiddlewaretoken]').remove(); 

それとも

$(this).find(":hidden").filter(':not(input[name=csrfmiddlewaretoken])').remove(); 

それとも

$(this).find("input[name!=csrfmiddlewaretoken]:hidden").remove(); 
2
$(this).find(":hidden").filter("[name!='csrfmiddlewaretoken']").remove(); 
2

あなたはそれからjQueryオブジェクトを作るよりも潜在的に速くなり、コンテキスト引数としてthisを渡すことができます。 :not()の式は、空白なしで:hiddenの後に続くことができます。つまり、:hiddenセレクタに2番目の条件が追加されます。

$(":hidden:not(input[name=csrfmiddlewaretoken])", this).remove(); 
関連する問題