2016-07-10 3 views
0

onclickBootstrap Switch Button 인 것을주의하려고했습니다. 하지만 그럴 때마다 아무 일도 일어나지 않습니다.부트 스트랩 스위치 onclick() 작동하지 않음

그래서 onchange을 시도했는데 경고하지만, onchange에 대해 ajax 함수를 추가했을 때. 그것은 다시는 작동하지 않았다. 여기

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); 
     } 
    });*/ 
} 

는 코드의 나머지 부분입니다 : 여기
<input type='checkbox' onclick='switchStatus($id,$status)' data-size='mini' name='my-checkbox' $status> 

내 함수에 대한 코드입니다 가 여기 내 코드입니다 당신이 변수를 dataString에

<?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

콘솔에 어떤 오류가 있습니다 : 자세한 정보는 문서를 읽기

스크립트는이

<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> 

같이해야합니까? –

+0

콘솔에 오류가 표시되지 않습니다. – Juju

+0

우선, 외부 입력이 없으므로 PDO 쿼리를 사용할 수있는 곳에서 pdo prepare 및 execute를 사용합니다. –

답변

0

, 당신은 그것을 종료 쉼표로 표시하면 다음 속성이 올 것이라고 나타냅니다.

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

@ 주주 입력에 $ id가 설정되어 있습니까? 상태를 볼 수 있지만 $ id는 어디에 있습니까? –

+0

게시물이 업데이트되었습니다. 나머지 코드가 포함되었습니다. – Juju

0

당신이 코드를 시도 할 수 있습니다 .. 세미콜론이를 교체하고 그 무엇을 참조하십시오

우리 것이

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

다음과 같이 간단하게 당신의 체크 박스를 넣어 switchChange 이벤트 사용 부트 스트랩 스위치 이벤트

모든 이브 nts는 네임 스페이스이므로, 핸들러를 연결할 때 항상 .bootstrapSwitch를 추가하십시오. 당신은 다음과 같은 방출 된 이벤트에 등록 할 수 있습니다 : http://www.bootstrap-switch.org/events.html

관련 문제