亲爱的朋友使用此功能我检索用户选择的值,并将其放在隐藏字段中以便在我的表单中使用它:
<SCRIPT type="text/javascript"> function updateHidden(sel){
var f = document.contract;
f.sel_value.value = sel.options[sel.selectedIndex].value;
} </SCRIPT>
问题是我的选择是在一个时间周期内,因此重复。以这种方式设置的js函数只读取第一个选择中选择的值。 我需要在函数中添加一个循环,但我不知道在哪里放它。 这是我的表格:
<form action="update.php" method="POST" name="contract">
<table class="myp-table">
<tr>
<td class="head-act">Contract</td>
</tr>
<?php do { ?>
<tr>
<td class="head-act"><select name="playerContract[]" onchange="updateHidden(this)">
<option value="0" <?php if (!(strcmp(0, $row_datacontract['playerContract']))) {echo "selected=\"selected\"";} ?>>0</option>
<option value="1" <?php if (!(strcmp(1, $row_datacontract['playerContract']))) {echo "selected=\"selected\"";} ?>>1</option>
<option value="2" <?php if (!(strcmp(2, $row_datacontract['playerContract']))) {echo "selected=\"selected\"";} ?>>2</option>
<option value="3" <?php if (!(strcmp(3, $row_datacontract['playerContract']))) {echo "selected=\"selected\"";} ?>>3</option>
</select>
<input type="hidden" name="sel_value"></td>
<td><input name="id[]" type="hidden" value="<?php echo $row_datacontract['id']; ?>"/> </td>
</tr>
<?php } while ($row_datacontract = mysql_fetch_assoc($datacontract)); ?>
<tr class="zebra">
<td><input class="linkbuttonmp" name="contract" id="submit" type="submit" value="Invio" /></td>
</tr>
</table>
</form>
谢谢。
答案 0 :(得分:0)
问题是您的n
号码会<input type="hidden" name="sel_value">
,那么它如何知道要更改哪个name="sel_value"
?最好将其更改为sel_value[]
或唯一名称。
但是,使用.nextElementSibling
function updateHidden(sel){
sel.nextElementSibling.value = sel.options[sel.selectedIndex].value;
}
看到这个jsFiddle - http://jsfiddle.net/aFNdt/1/