这是我的代码。
<script type="text/javascript">
function showDiv(divID,val) {
var text= val.value;
alert(text);
}
</script>
Mouse:<select onChange="showDiv('#mouse',this);">
<option value="">Select Mouse Type</option>
<option value="{'text':'Normal','id':'normalMouse'}">Normal</option>
<option value="{'text':'Gaming','id':'gamingMouse'}">Gaming</option>
</select>
输出为:
{'text':'Normal','id':'normalMouse'}
但是输出只能是“正常”。这意味着我想分别访问这些值。
根据w3c org选项,文档的值只能具有字符串值,因此有必要将其转换为对象。
Working fiddle
JavaScript代码
function showDiv(divID, val) {
var value = eval('(' + val.value + ')');
alert('Text: "' + value['text'] + '" Id: "' + value['id'] + '"');
}
正如@Johan所说,使用eval()
这不是一种安全的方法。Working Fiddle using JSON.parse
的HTML
<option value='{"text":"Normal","id":"normalMouse"}'>Normal</option>
<option value='{"text":"Gaming","id":"gamingMouse"}'>Gaming</option>
Java脚本
function showDiv(divID, val) {
var value = JSON.parse(val.value);
alert('Text: "' + value['text'] + '" Id: "' + value['id'] + '"');
}
希望能帮助到你..!!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句