2016-03-21 10 views
0

こんにちは、私はいくつかのJavascriptに3つの値を渡そうとしています。これは最初の関数で機能します。すべての値はJavascriptが機能に値を渡していません

function handleClick(cb,colum,id) { 
    if (cb.checked == true){ 
    var checked = 1; 
    } else { 
    var checked = 0; 
    } 
    sendHddToPHP2(checked,column,id); 
} 

しかし、第二の機能は、私が何を取得呼ばれたら......ここで正しいことが判明している....

function sendHddToPHP2(editableObj,column,id) { 
    window.alert(editableObj); 
    $.ajax({ 
      url: "update/hdd.php", 
      type: "POST", 
      data:'column='+column+'&editval='+editableObj+'&id='+id, 
      success: function(data){ 
        $(editableObj).css("background","#FDFDFD"); 
        } 
    }); 
} 

私はかどうかをチェックするためにアラートを追加しました変数が存在し、実行されませんでした。私は何のタイプミスも見ることができず、私の知識はJavascriptでそれほど素晴らしいものではありません。私が見逃したことはありますか?

+0

「何も定義しない」。あなたのエラーコンソールには何かがありますか? 'success'コールバック内にデバッガーの文を入れましたか? 'error'コールバックを追加しましたか?あなたは*何かのエラーや何かを続けるのですか? – zero298

+0

三項演算を使って1行に圧縮することもできます: 'var checked = cb.checked? 1:0' – AnthonyDJ

答えて

3

引数リストに「colum」という誤植があります。

また、Ajaxコールバックの後のチェックボックスにアクセスしたいと思うようですが、要素ではなくチェックボックスの「editableObj」値を使って参照しようとしているので失敗します。

+0

ああ、うわー、私はそれを見ていないと信じられない、ありがとう。私はこれを正しくしたと思った – JackGroves

0

私はあなたがあなたの関数は次のようになりたい理解したよう:

function handleClick(cb,colum,id) { 
    var checked = (cb.checked)?1:0;//same as(cb.checked==true)1:0 
    sendHddToPHP2(checked,column,id); 
} 

をしかし、あなたが1または0を返すようにしてもよろしいですか? 2番目の機能で使用する予定だから$(1).css("background","#FDFDFD"); $(0).css("background","#FDFDFD");