我开始从此解决方案生成我的脚本,请在此链接display/hide textbox based on drop down list
找到在这种情况下,值必须是字符值。但在我的情况下,我需要的值是从mysql数据库中指定的ID号。
这是我修改过的脚本,不起作用。选择其他值时,不显示文本框。
<form name="myform">
<table>
<tr>
<td>
<select name="one" onchange="if (this.value=='10000'){this.form['10000'].style.visibility='visible'}else {this.form['10000'].style.visibility='hidden'};">
<option value="" selected="selected">Select...</option>
<option value="1">1</option>
<option value="2">3</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="10000">Other</option>
</select>
<input type="textbox" name="10000" style="visibility:hidden;"/>
</td>
</tr>
</table>
</form>
但是如果将值10000更改为OtherValue字,则此脚本可以工作。 如何修改这个脚本?
答案 0 :(得分:3)
您可以像这样重写代码。
<form name="myform">
<table>
<tr>
<td>
<select name="one" onchange="if (this.value=='10000'){userselect.style.visibility='visible'}else {userselect.style.visibility='hidden'};">
<option value="" selected="selected">Select...</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="10000">Other</option>
</select>
<input type="textbox" name="10000" id="input" style="visibility:hidden;"/>
</td>
</tr>
</table>
</form>
<script>
var userselect = document.getElementById('input');
</script>
答案 1 :(得分:-1)
如果您询问如何将字符串转换为数字,则可以在字符串前附加+
符号,如下所示:
var numberString = "3"; // the string "3"
var numericValue = +numberString; // the number 3
请注意,如果您的字符串包含非数字值,则会转换为NaN
。