0

オープンがクリックされたときにデータベースを更新してステータスをオープンチケットに設定する行をいくつか設定しました。

しかし、何らかの理由で、マスターの $id を一緒に使用できませんか? 私はそれを使って他のことをする必要があり、マスターIDを取得するためだけに次のページで2番目のクエリやJOINを実行したくない.

私はクエリにこれを持っています(すべての接続コードなどを除外しました..):

<?php start query { ?>

<a href="javascript:void(0)" id="<?php echo $cid;?>" onclick="open(id)">Open</a>

<input type="hidden" id="REF<?php echo $cid;?>" value="<?php echo $id;?>">

<?php } // end query ?>

私は私のajaxにこれを持っています:

function open(id) {
var txt = $.ajax({
url: 'actions/open.php',
async: true,
type:'POST',
data:({
cid: id,
lid: $('#REF'+id).val()
}) 
}).success;
alert( cid,id );
setTimeout(function(){window.location.href='view.php?mode=Preview&cid='+id+'&id='+lid;},200);
}

私の問題は、id が firebug で null であると私に言い続けることです

cid を取得してテストを実行するように変更すると、正常に動作しますか?

document.getElementByIdを試しましたが、奇妙な理由で何も機能しませんか?

私のコードに何か問題がありますか? 私は何かを逃していますか?

前もって感謝します:) ジョニー

4

1 に答える 1

0

この行を invokeopenにして、補間された変数値を渡すつもりですか?

<a href="javascript:void(0)" id="<?php echo $cid;?>" onclick="open(id)">Open</a>    

になるだろう

<a href="javascript:void(0)" id="<?php echo $cid;?>" onclick="open(<?php echo $id;?>)">Open</a>

lidさらに、AJAX 呼び出しでは、 のキーを持つオブジェクトをの値に割り当てているように見えます$('#REF'+id).val()。ただし、非表示の入力タグの ID はREF<?php echo $cid;?>. $CIDの値をtoに渡すかopen()、入力フィールドの ID をREF<?php echo $id;?>

その他の注意事項: jQuery を使用して AJAX 呼び出しを作成しているようです。async: trueデフォルトのオプション値であるa を指定しています。読みやすくするために、コードからこれを省略できます。http://api.jquery.com/jQuery.ajax/でデフォルト値を確認してください。

于 2012-06-23T02:57:48.313 に答える