我基本上在做两个下拉菜单,一个决定接下来应该显示哪个选择。然后它会显示第二个下拉菜单,然后应该会显示一个新表单。我已经简化了代码,但想法应该还是一样的。我的问题是第二个没有显示它应该显示的代码。
HTML
<select id="change1" on change="changeForm(this.value);">
<option> Select Option </option>
<option value="c"> Option 1</option>
<option value="p"> Option 2</option>
</select>
<div id="form"></div> <div id="changep"></div>
Javascript
function changeForm(x)
{
if(x=='c')
{
$('#form').html('It Works');
}
if(x=='p')
{
var code = ' <select id="option2" onselect="placeHtml(this.value);"><option>Select Message</option><option value="1m">Message 1</option><option value="2m">Message 2</option></select>';
$('#form').html(code);
}
}
function placeHtml(x)
{
if(x=='1m')
{
$('#changep').html('This will work');
}
if(x=='2m')
{
$('#changep').html('This is a different message');
}
}
现在我的问题是,当使用第一个下拉菜单时,结果符合预期,但使用第二个下拉菜单......没有任何变化。如果我使用 onchange 而不是 onselect 在我更改选择后它只有一个空白下拉菜单。我不知道这里有什么问题。有人可以帮助我吗?使用 jquery 1.8.2