よく考えてみると、これは実際には js とは何の関係もなく、やはり php の問題です。
問題の背景: ページの左側にはいくつかのレコードのリストがあり、右側には情報を入力して後で保存するための空のボックスが多数あります。次に、左側のレコードの 1 つをクリックすると、関連する情報が右側に表示されます。上記の機能はすべて実装済みです。
質問: 右側にある多くの空のボックスの 1 つは、どの車を選択するための選択ドロップダウン リストです。私のアプローチは、データベースから carNum (整数型) を読み取り、それを選択のオプションの値として使用することです。表示される値は、データベース内の車両に対応する LicenseNum (ナンバー プレート番号) です。のPHPループメソッドを使用して実装されています。しかし、jsを使用してIDのselectの値を指定すると、selectはまったく応答しません。このselectを特定のselect(つまり、PHPループを削除し、HTMで値とオプション名を直接設定)に変更すると、JSでselectの値を指定してその値を表示できるようになります。
しかし、ループ内で選択を設定でき、js で値を指定できることを望みます (明らかに、この場合、動的に表示できます。)
それを解決するにはどうすればよいですか?ポイントを広めてください。それでも足りない場合は、返信またはプライベートメッセージを送ってください。それを補うことができます。
コードに直接移動します:
<!---下面是htm直接设定html的select的代码----><select id="showOrder_21" name="truck" class="dropdown" style="margin-left:0px !important; border:1px solid #BABABA !important;"> <option value ="1">QAZ123</option> <option value ="2">WSX234</option> <option value ="3">EDC345</option> <option value ="4">TGB456</option></select></td>
<select id="showOrder_21" name="truck" class="dropdown" style="margin-left:0px !important; border:1px solid #BABABA !important;"><?php $query = "select * from transport.truck order by carNum";$data = getAll($query);foreach($data as $each){?><option value="<?php echo $each['carNum']; ?> "><?php echo $each['licNum'];?></option><?php } ?></select></td>
<script type="text/javascript"> $(document).ready(function(){ $(".LeftTask").click(function(){ $(this).css("background","#A8A8A8"); $(this).siblings().css("background","white"); var orderID = $(this).find('input').val(); $.ajax({ type:"get", url:"main/ajax.php", data:{ orderID:orderID }, success:function(msg){ msg = eval("("+msg+")"); <!---当中删除大量不相关的显示---> $("#showOrder_21").val(msg.truck); } }); });}); </script>
$(".LeftTask").click(function(){
が
$(".LeftTask").live("click",function(){ に変更されました。 ......
後者の利点は、「ページのロード後に DOM ノードが生成されてもイベントをバインドできる」ことです。
jquery のマニュアルを参照してください。 .LeftTask") .click(function(){
に変更します
$(".LeftTask").live("click",function(){ .......
後者の利点は次のとおりです。ノードはページがロードされた後に生成され、イベントにバインドすることもできます。
jquery マニュアルを参照してください。
わぁ、ここに来ました、ようこそ。今すぐ試してください。
ありがとう
もう 1 つのより良い方法は、動的に生成された HTML タグで onclick="xxxxxxxx()" を使用する利点は、ライブ
$(".LeftTask").click(function(){ のようにブラウザのリソースを消費しないことです。
に変更します
$(".LeftTask").live("click",function(){ ......
後者の利点は、ページの後に DOM ノードが生成された場合でもロードされている場合はバインドできます
jquery マニュアルを参照してください
エラー メッセージ:
行: 408
エラー: オブジェクトはプロパティまたはメソッド 'live' をサポートしていません
おそらく、それはヘッドに設定したバージョンです。
2 日前あなたが私に与えたチェックボックスの属性も間違っていました、そして私はそれを最新バージョンのpropに変更し、ついに成功しました
真ん中に余分なスペースがあります!
問題なければおかしいです
賢明なことに、私は長い間自分でそれをチェックしていましたが、同時にこの問題を発見しました。
このようにして、モデレーターは問題を指摘し、一貫したサポートを私に求めます。
投稿していただきありがとうございます。お二人とも知り合いですが、これでいいと思いますか:
モデレータは 65 ポイントを取得しますが、もう一度私を見たら 35 ポイントはどうでしょうか?
このようにして、モデレータは問題を指摘し、一貫したサポートを私に求めます。
投稿していただきありがとうございます。お二人とも知り合いですが、これでいいと思いますか:
モデレータは 65 ポイントを取得しますが、もう一度私を見たら 35 ポイントはどうでしょうか?
彼らは全員知り合いです、今のところはここまでです。ご満足いただけない場合は、返信するかプライベートメッセージをお送りください。
何度も助けていただきありがとうございます! ! !
スコアが雲の上でも構いません... 質問がある場合は、コミュニケーションを続けてください... 編集者は本当に鋭くて、問題が一目でわかります~