2016-08-06 3 views
1

私はチェックボックスを美しくするためにiCheckプラグインを使用します。しかし、jQueryをシリアル化してフォームのデータをすべて集めると、チェックされたチェックボックスは表示されず、投稿されません。iCheckとjQueryはシリアル化

ユーザーがiCheckボックスをクリックしてチェックすると、入力タイプチェックボックスの状態は実際にはチェックされていない状態に設定されているようです。

これを行う方法?通常のHTMLチェックボックスを使用すると、シリアル化によって正常に選択されます。

フォームの

関連部分:

<div class="form-group"> 
<label class=""> 
<input type="checkbox" class="minimal" id="remote" name="remote" value="1"> 
</label>       
</div> 

スクリプト:

//iCheck for checkbox and radio inputs 
$('input[type="checkbox"].minimal, input[type="radio"].minimal').iCheck({ 
checkboxClass: 'icheckbox_minimal-blue', 
radioClass: 'iradio_minimal-blue', 
checkedClass: 'checked', 
}); 

提出機能:

$.ajax({ 
    type: "POST", 
    url: '/taken/action.php', 
    data: $form.serialize(), 
    dataType: "json", 
    ............ 

答えて

0

iCheckはdiv要素のようにチェックボックスをラップすることを私には思えますこれは:

<div class="icheckbox_minimal" aria-checked="true" aria-disabled="false"> 
    <input tabindex="5" type="checkbox" id="minimal-checkbox-1" style="position: absolute; top: -20%; left: -20%; display: block; width: 140%; height: 140%; margin: 0px; padding: 0px; border: 0px; opacity: 0; background: rgb(255, 255, 255);"> 
    <ins class="iCheck-helper" style="position: absolute; top: -20%; left: -20%; display: block; width: 140%; height: 140%; margin: 0px; padding: 0px; border: 0px; opacity: 0; background: rgb(255, 255, 255);"></ins> 
</div> 

これをチェックすると、指定したチェック済みクラス(この場合は 'checked')がdivに追加されます。

私は何をするだろうことは、あなたがdiv要素をクリックしたときに、値を変更し、隠し入力を持っているだけである:

$(".icheckbox_minimal").click(function(){ 
    // You might want more logic in here since You probably have more then 
    // One check box to toggle. 
    var val = $("#myHiddenIpnut").val(); 
    $("#myHiddenIpnut").val(val === "true" ? "false" : "true"); 
}); 

今jQueryのこれらの入力をつかむだろう:)

+1

に私を置くおかげで、正しい道。隠しフィールドを作成し、iCheckのコールバック関数を使用してそれを変更しました。 \t \t \t \t \t \t $( "#;( 'ifChecked'、機能(イベント){ \t \t \t \t \t \t警告(event.type + 'コールバック')上の $( '#のonsitecheckbox')。 val( 'onsite'); \t \t \t \t \t \t}); ( 'ifUnchecked'、機能(イベント){ \t \t \t \t \t \t警告(event.type + 'コールバック')上の \t \t \t \t \t \t \t \t \t \t \t \t $( '#のonsitecheckbox')。 ; \t \t \t \t \t \t $( "#場所")のval( 'リモート');。 \t \t \t \t \t \t}); – Mbrouwer88

+0

@ Mbrouwer88お役立ち情報 – Alex

関連する問題