我有这个表格的元素:
<form ...>
<select name="type[]" id="type[]">
<option value="1">One</option>
<option value="2">Two</option>
</select>
<input type="text" name="tvalue[]" id="tvalue[]" />
<select name="type[]" id="type[]">
<option value="1">One</option>
<option value="2">Two</option>
</select>
<input type="text" name="tvalue[]" id="tvalue[]" />
...
<input type="submit" value="send" />
</form>
所以,我需要在选择选项元素更改时填充输入文本元素。 (元素数组?) 请有人帮助我吗?
上面的标记是这个PHP脚本的结果(我更改了上面的标记):
<?php
echo "<form name='form1' id='form1' action=\"#\" method='post'>";
for ($i=0; $i<5; $i++){
echo "<select name='type[]' id='type[]'>\n";
echo "<option value ='1'>One</option>\n";
echo "<option value ='2'>Two</option>\n";
echo "</select>\n";
echo "<input type='text' name='tvalue[]' id='tvalue[]' value=''>";
}
echo "<input type='submit' name='submit' id='submit' value='enviar' />";
echo "</form>";
?>
(输入[]和tvalue [],因为我发布了这个数组)
问题是我在选择选项时需要填写输入文本。 例如,当我在第一个选择中选择选项“One”时,则输入第一个输入文本 必须显示“一个”,所以当我在第二个选择中选择一个选项时,第三个,等等... 因此,当我提交表单时,我可以获得此值。
非常感谢你! 卡洛斯。
答案 0 :(得分:3)
1 - 删除它们为not valid的欺骗ID。
2 - 假设您的标记正是您发布的内容,请提供或选择更多选择和相应的文本框,并且之间不包含任何元素:
$("select[name='type[]']").change(function() {
$("input[name='tvalue[]']").eq($(this).index()).val(this.value);
}).change(); // set initial textbox value on page load
答案 1 :(得分:3)
在只有一个select和一个输入来修改
的情况下,我写下了这个例子$('select#id1').change(function(){ //the event here is change
if ($(this).val() === "1" ) //check the value into the select
{
$('input#id2').val("ONE!"); //change the value into the input
}
else
{
$('input#id2').val("TWO!"); //change the value into the input
}
});