私は基本的に2つのドロップダウンメニューを実行しています。1つは次に表示する選択を決定します。次に、2番目のドロップダウンメニューが表示され、そこから新しいフォームが表示されます。コードを簡略化しましたが、考え方は同じです。私の問題は、2番目のものが想定されているコードを表示しないことです。
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');
}
}
今私の問題は、最初のドロップダウンメニューを使用すると、結果は期待どおりですが、2番目のドロップダウンメニューを使用すると...何も変わらないということです。onselectの代わりにonchangeを使用した場合、選択を変更した後、空白のドロップダウンメニューが表示されます。ここで何が問題なのかわかりません。誰か助けてもらえますか?jquery1.8.2の使用