以下のコードでは、1 つの列にテキスト入力を表示し、2 番目の列に合計点数の列を表示し、最後の列に残りの点数を表示します。表は次のようになります。
Marks Per Answer Total Marks Marks Remaining
(blank text input) 4 4
(blank text input) 6 6
しかし、私が抱えている問題は、テキスト入力が空であり、「合計マーク」列の値を表示する必要があることです(最初のテキスト入力では4、2番目のテキスト入力では6)。
また、両方のテキスト入力には合計マークが含まれているため、[Marks Remaining] 列の下で、両方の行に 0 が表示されます。テキスト入力から合計点の下の 6 を引いた値は、2 行目の残りの点数を 0 にします)
したがって、テーブルは実際には次のようになります。
Marks Per Answer Total Marks Marks Remaining
(text input value=4) 4 0
(blank text input value=6) 6 0
私の質問は、以下のjqueryを変更することで、上記の両方のステップをどのように解決できるかということです:
$(function() {
//alert("here");
var questions = $('#markstbl td[class*="_ans"]').length;
//disable single entry
for (var i=0;i<=questions;i++){
if($("[class*=q"+i+"_mark]").length ==1){
var t_marks = $("[class*=q"+i+"_ans]").html();
//alert(t_marks);
alert(t_marks);
$("[class*=q"+i+"_mark]").val(t_marks).attr("disabled","disabled");
//$("[class*=q"+i+"_mark]").attr("disabled","disabled");
}
}
}
以下は動的 HTML テーブルです。
<table border='1' id='markstbl'>
<thead>
<tr>
<th class='answermarksth'>Marks per Answer</th>
<th class='totalmarksth'>Total Marks</th>
<th class='noofmarksth'>Marks Remaining</th>
</tr>
</thead>
<tbody>
<tr class="questiontd">
<td class="answertd" name="answers[]"><?php echo$searchAnswer[$key]?></td>
<td class="answermarkstd">
<input class="individualMarks q<?php echo$questionId?>_mark_0" q_group="1" name="answerMarks[]" id="individualtext" type="text" />
</td>
<?php
if($questionId != $prev_ques){
?>
<td class="totalmarkstd" rowspan="<?php echo$row_span[$questionId]?>"><?php echo$totalMarks[$key]?></td>
<td class="noofmarkstd q<?php echo$questionId?>_ans_text" q_group="1" rowspan="<?php echo$row_span[$questionId]?>"><?php echo"<strong>".$searchMarks[$key]."</strong>"?></td>
<?php
}
?>
</tr>
<?php
$prev_ques = $questionId;
}
?>
</tbody>
</table>
現時点では、jquery関数でt_marks変数を使用してテキスト入力に値を表示しようとしていますが、テーブル行内の各SINGLEテキスト入力内には何も表示されません