我有以下的html:JavaScript的不工作
<select name="user_level" id="user_level" class="input" onChange="javascript:choosePackage(this.value);" >
<option value="1" >Single</option>
<option value="3" >Multi</option>
<option value="7" >Super</option>
</select>
<div id="showPackageSelect" ></div>
,這是我的js:
<script type="text/javascript">
function choosePackage(packageselected){
if(packageselected=='3') { $("#showPackageSelect").replaceWith("<div id='normal'>User Package</div><select name='user_package' id='user_package' class='input'><?php $rPackages = mysql_query('select * from packages WHERE id>=2 AND id <=5 ORDER BY id DESC');while ($rp = mysql_fetch_array($rPackages)) { ?><option value='<?php echo $rp['id'];?>'><?php echo $rp['package'];?></option><?php } ?></select>");
} else if(packageselected=='1') { $("#showPackageSelect").replaceWith("<div id='normal'>User Package</div><select name='user_package' id='user_package' class='input'><option value='1'>Super User</option></select>");
} else if(packageselected=='6') { $("#showPackageSelect").replaceWith("<div id='normal'>User Package</div><select name='user_package' id='user_package' class='input'><option value='6'>Single</option></select>");
} else { alert('this should never happen!'); }
}
</script>
我曾嘗試使用的if else等。 有趣的是幾種方法當我提醒它的價值,它工作正常,當我測試它它做了一次,但之後,將不會改回單。
預先感謝 強尼
UPDATE:
<script type="text/javascript">
function choosePackage(packageselected){
if(packageselected=='3')
$("#showPackageSelect").replaceWith("<div id='showPackageSelect' ><div id='normal'>User Package</div><select name='user_package' id='user_package' class='input'><?php $rPackages = mysql_query('select * from packages WHERE id>=2 AND id <=5 ORDER BY id DESC');while ($rp = mysql_fetch_array($rPackages)) { ?><option value='<?php echo $rp['id'];?>'><?php echo $rp['package'];?></option><?php } ?></select></div>");
else if(packageselected=='1')
$("#showPackageSelect").replaceWith("<div id='showPackageSelect' ><div id='normal'>User Package</div><select name='user_package' id='user_package' class='input'><option value='1'>Super User</option></select></div>");
else if(packageselected=='7')
$("#showPackageSelect").replaceWith("<div id='showPackageSelect' ><div id='normal'>User Package</div><select name='user_package' id='user_package' class='input'><option value='6'>Single</option></select></div>");
}
</script>
不應該'如果(packageselected == '6')'是'如果(packageselected = = '7')'? – 2012-07-19 02:17:44
您正在腳本中測試6,但7是下拉的值..? – 2012-07-19 02:20:11
除了@DennisMeng指出的我不能重現你的問題。它在小提琴中適合我。 http://jsfiddle.net/7hcCw/ – Robert 2012-07-19 02:20:29