私は、Stripesフレームワークとともにjavascriptクライアントテンプレートを使用しようとしています。これは、ストライプフォームタグライブラリを使用できないことを意味します。デフォルトでは、ストライプがフォームと一緒にレンダリングされたチェックボックスを判別する隠し暗号化フィールドを挿入するため、渡されなかったチェックボックスはチェックされませんフォームパラメータとして。ストライプスタグなしの未チェックのhtmlチェックボックスを送信するにはどうすればよいですか?
この暗号化された隠しフィールドをタグライブラリを使用することができなくてもすべてのフォームとともに含めることは非常に負担になるので、私はグローバルな解決策を探しています。私が思いついたのは、フォームが送信される前にフォームをインターセプトし、チェックされていないチェックボックスの値をfalseに変更し、サーバーに送信されるようにチェックします。これは、フォームの提出が完了する前に、チェックされていないすべてのオプションを再度確認するという副作用を伴います。チェックされたアニメーションを非表示にする方法はありますか?
$("body").delegate("form", "submit", function() {
var $this = $(this);
$('input:checkbox:not(:checked)', $this).each(function() {
var $this = $(this);
$this.attr('value', 'false');
$this.attr('checked', 'checked');
});
});
まあ解決策は、単に代わりに隠しフィールドを追加するために私に来た: $( '入力:チェックボックス:ありません(:チェックする)'、$をここで
は私の現在のソリューションです。これは).each(function(){ \t \t \t $( '').attr( 'type'、 'hidden')。attr( 'name'、$(this).attr( 'name')))。 attr( 'value'、 'false')。appendTo($ this); \t \t}); – user842800