我有这样的表格:
<form ...>
<select name="fuits[]" id="fruits[]">
<option value="A">Apple</option>
<option value="O">Orange</option>
<option value="P">Pear</option>
</select>
<input type="text" name="fruit[]" id="fruit[]" />
<select name="fruits[]" id="fruits[]">
<option value="A">Apple</option>
<option value="O">Orange</option>
<option value="P">Pear</option>
</select>
<input type="text" name="fruit[]" id="fruit[]" />
<select name="fruits[]" id="fruits[]">
<option value="A">Apple</option>
<option value="O">Orange</option>
<option value="P">Pear</option>
</select>
<input type="text" name="fruit[]" id="fruit[]" />
...
<input type="submit" value="send" />
因此,我需要从每个选择选项值填充每个输入文本(将输入文本与所选选项匹配)
我有这个JQuery,但它不能正常工作=(,
$("select[name='type[]']").change(function() {
$("input[name='tvalue[]']").eq($(this).index()).val(this.value);
}).change();
这是DEMO(感谢karim79):http://jsfiddle.net/GKrd9/4/ 建议好吗?
谢谢! 卡洛斯
答案 0 :(得分:3)
我编辑了你的小提琴,希望这就是你想要的。
$("select[name='type[]']").change(function() {
$(this).next().val(this.value);
}).change();
答案 1 :(得分:0)
代码中唯一缺少的是index()中的选择器。
这可以解决您的问题:
$("select[name='type[]']").change(function() {
$("input[name='tvalue[]']").eq($(this).index("select")).val(this.value);
}).change();
答案 2 :(得分:0)
试试这个:
$(function() {
$("select").change(function() {
var jqThis = $(this);
jqThis
.next('input')
.val(jqThis.find('option:selected').val())
}).change();
});
这是一个jsfiddle:http://jsfiddle.net/HPYxy/