未捕获的类型错误:无法读取未定义的属性“undefined”
2014-11-10
10183
我遇到了 select 标签的问题。我在 Google 上搜索了一下,没有找到任何关于我的问题的解决方案。这里是其中一个链接... ( Uncaught TypeError: Cannot read property 'value' of undefined ).....我在 select 标签的 onchange 事件上有函数,像这样..
<select id="selectBox" onchange="_change();">
<?php
$i = 1;
while ($lastpage >= $i):?>
<option><?php echo $i; ?></option>
<?php
$i++;
endwhile;
?>
</select>
可能的 jQuery 代码...
<script type="text/javascript">
function _change(evt)
{
alert(this.options[this.selectedIndex].value);
};
</script>
问题是为什么我得到的是 undefined 而不是 undefined 的值或属性,这样我就可以继续解决这个问题了... 谢谢,任何帮助都将不胜感激...
2个回答
您必须将 referrer 元素
this
传递给您的 javascript 函数。
代码:
<select id="selectBox" onchange="_change(this);">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
js:
function _change(el) {
alert(el.options[el.selectedIndex].value);
};
Irvin Dominin
2014-11-10
***SIMPLEST REPRESENTATION:-***
<!DOCTYPE html>
<html>
<body>
Select a fruit and click the button:
<select id="mySelect">
<option value="11">Apple</option>
<option value="12">Orange</option>
<option value="13">Pineapple</option>
<option value="14">Banana</option>
</select>
<button type="button" onclick="myFunction()">Display index</button>
<script>
function myFunction() {
var x = document.getElementById("mySelect").selectedIndex;
var y = document.getElementById("mySelect").options;
alert("Index: " + y[x].index + " text is " + y[x].text + " and value is " + y[x].value);
}
</script>
</body>
</html>
kki3908050
2014-11-10