テーブルを生成する次のコードがあります。
<table class="table table-bordered table-striped" id="assignedvs">
<thead>
<tr>
<th>VlId</th>
<th>Name</th>
<th>Status</th>
<th>Voice</th>
<th>Jumbo</th>
<th>Mode</th>
</tr>
</thead>
<tbody>
<?php foreach ($vln as $vlndetail): ?>
<tr>
<td id='vlid'><?php echo $vlndetail['VlId'] ?></td>
<td><?php echo $vlndetail['Name'] ?></td>
<td><?php echo $vlndetail['Status'] ?></td>
<td><?php echo $vlndetail['Voice'] ?></td>
<td><?php echo $vlndetail['Jumbo'] ?></td>
<td><?php echo $vlandetail['Mode'] ?></td>
</tr>
<?php endforeach ?>
VlId がユーザーがテキスト ボックスで指定したものと一致する行を見つける必要があります。このレコードを見つけたら、特定の行のモード列の値を取得したいと思います。
ここに私がこれまでに書いたものがあります:
$('#delete').live('click', function() {
//get a count of all records. only allowed to delete if you have more than one + the header.
var reccount = $('#assignedvs tr').length;
if (reccount > 2)
{
//loop through the table
$('#assignedvs tr').each(function() {
var temp = $(this).find(".vlid").html();
console.log(temp);
if (temp == $('#uservalue').val){
//grab mode column
}
});
}
else
{
alert("error: must have at least 1 record.");
}
});
問題 - vlid 列を参照する必要があるコードが正しくありません。常にコンソールに null を出力します。私が間違ったことを教えてもらえますか?ありがとう。
編集1
ID をクラスに変更し、jquery を元のコードに戻しました。それは機能しています-ヘッダーが含まれていると思うという事実を除いて。私は4行+ヘッダーを持っています。コンソールの結果を確認すると、最初の出力は常に NULL であり、次に 4 つのレコードの正しい値です。ヘッダーを無視するにはどうすればよいですか?