我有类.field_inputs
是动态的,这意味着我可以添加多达我想一个div选项(上点击“添加更多”)。在这个div里面,有一个选择下拉菜单和一个文本输入。抢div的选择和使用选择输入
我这里有一个的jsfiddle:3210
它看起来像这样:
<div class='field_inputs'>
<select>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="None">None</option>
</select>
<input type='text' name='test1'/>
</div>
我想要做的是,如果你在下拉菜单中点击萨博,则输入(同样.field_inputs DIV作为选择你点击)内将与文本(不一定是相同的文本选择的名字,虽然被填充。)这还仅仅只是默认情况下,用户应该仍然能够点击输入并更改文字。
我有一些jQuery的,现在看起来像:
$(".field_inputs").each(function() {
//Grab the select
var thisSelect = this.find("select");
//Grab the input
var thisInput = this.find("input[type='text]");
thisSelect.change(function(){
switch(thisSelect.val())
{
case "Saab":
thisInput.val("State");
break;
case "Mercedes":
thisInput.val("Country");
break;
}
});
});
,但它给我的错误:
Uncaught TypeError: Object #<HTMLDivElement> has no method 'find'
将'this.find'改为'$(this).find'。开关/大小写区分大小写,就像JavaScript的其余部分一样,所以没有任何匹配“Saab”或“Mercedes”,因为实际值是小写字母。 – j08691
@the_ - 你有资本'Saab'和'Mercedes',但在拨弄它们是小写。 JavaScript区分大小写。 – PlantTheIdea
http://jsfiddle.net/vp_arth/rfPXx/11/ –