2016-07-10 9 views
0

私は何かを警告しようとしていますonclickBootstrap Switch Buttonです。 しかし、私がそれをするたびに、何も起きません。ブートストラップスイッチonclick()が動作しません

私はonchangeを試しました。それは何か警告しますが、onchangeのajax関数を追加したときです。それは再び働かなかった。ここ は私のコードです:ここでは

<input type='checkbox' onclick='switchStatus($id,$status)' data-size='mini' name='my-checkbox' $status> 

は私の関数のコードです:

function switchStatus(id,status){ 
      alert(id); 

    /*var theID = id; 
    var theStatus = status; 
    var dataString = "projectID=" + theID + "&status=" + theStatus, 
    $.ajax({ 
     url: "ajax/updateProjectStatus.php", 
     type: "POST", 
     data: dataString, 
     cache: false, 
     success: function (data){ 
     alert(data); 
     } 
    });*/ 
} 

は、ここでは、コードの残りの部分です:

<?php 
     $sql = $db->prepare("SELECT * from tbl_project where col_status <> 2"); 
     $sql->execute(); 
     while($result = $sql->fetch(PDO::FETCH_ASSOC)) 
     { 
      $id   = $result['projectID']; 
      $name   = $result['col_projName']; 
      $date   = $result['col_createdDate']; 
      $status  = ($result['col_status']==1) ? "checked" : ""; 
      $sd = "asd"; 
      echo " 
      <tr> 
      <td>$id</td> 
      <td>$name</td> 
      <td>$date</td> 
      <td> 
      <input type='checkbox' onchange='switchStatus($id,$status)' data-toggle='toggle' $status> 
      </td> 
      <td> 
      <div class='btn-group' role='group'> 
       <input type='button' value='Manage' onclick='Xmanage($id,\"$name\")' class='btn btn-info'> 
       <input type='button' value='Remove' onclick='Xdelete($id)'    class='btn btn-danger'> 
      </div> 
      </td> 
      </tr> 
      "; 
     } 
     ?> 
+0

は、コンソール上の任意の誤差はありますか? –

+0

コンソールにエラーは表示されません。 – Juju

+0

まず、PDOクエリを使用できる外部入力がないため、pdo prepareとexecuteを使用しています。 –

答えて

0

変数をdataStringでは、あなたがそれを終わらせますコンマで、これは次のプロパティが来ることを示しますが、そうではありません。

var theID = id; 
    var theStatus = status; 
    var dataString = "projectID=" + theID + "&status=" + theStatus; 
    $.ajax({ 
     url: "ajax/updateProjectStatus.php", 
     type: "POST", 
     data: dataString, 
     cache: false, 
     success: function (data){ 
     alert(data); 
     } 
    }); 
+0

まだ動作していません – Juju

+0

@Juju入力に$ idが設定されていますか?ステータスは表示されますが、$ idはどこですか? –

+0

ポストが更新されました。コードの残りの部分が含まれています。 – Juju

0

あなたはこのコードを試すことができます。..セミコロンでそれを交換し、それが何をするかを参照してください。

は、私たちがするこの

<input type='checkbox' data-id="$id" name="my-checkbox" data-size='mini' > 

次のように単純にあなたのチェックボックスを置きますswitchChangeイベントを使用するブートストラップのイベント

すべての前夜ntsは名前空間であるため、ハンドラをアタッチするときに常に.bootstrapSwitchを追加します。 あなたは次のように放出されたイベントに登録できます。

をあなたのスクリプトは詳細はこの

<script type="text/javascript"> 
    $("[name='my-checkbox']").bootstrapSwitch(); 
    $('input[name="my-checkbox"]').on('switchChange.bootstrapSwitch', function(event, state) { 
    var id = $(this).data('id'); 
    console.log(id); 
    alert(id); 
    //console.log(this); // DOM element 
    console.log(event); // jQuery event 
    console.log(state); // true | false 
    }); 
</script> 

のようになります。ドキュメントを読む:http://www.bootstrap-switch.org/events.html

関連する問題