未捕获类型错误:不能读取属性'text'在Java脚本中获取所选值的未定义
Uncaught TypeError: Cannot read property 'text' of undefined for getting selected value in java script
我试图从下拉值中获得所选值,在警告中显示
有人能帮我吗?Uncaught TypeError: Cannot read property 'text' of undefined
var selectedObj = document.getElementById('selectedOption');
alert("selectedObj--->"+selectedObj);
var selectedOptionText = selectedObj.options[selectedObj.selectedIndex].text;
selectedIndex
技术细节返回值:一个数字,表示的索引下拉列表中选择的选项。索引从0开始。如果未选择选项,返回值为-1
因此,如果没有选择任何选项,您最终将得到selectedObj.options[-1]
,它将始终是undefined
…
你可以这样写:
var selectedOptionText = selectedObj.selectedIndex > -1 ? selectedObj.options[selectedObj.selectedIndex].text : null;
如果不选择任何选项,则selectedOptionText
为空。
或
var selectedIndex = selectedObj.selectedIndex;
if (selectedIndex === -1) selectedIndex = 0;
var selectedOptionText = selectedObj.options[selectedIndex].text;
如果您希望selectedOptionText
在未选择选项的情况下等于select的第一个选项
你期望'selectedObj'是什么?HTML选项元素还是选择元素?这在代码中是不明确的…
selectedObj.options
暗示它是select元素,
也是selectedObj.selectedIndex
,
var selectedObj = document.getElementById('selectedOption');
暗示这是一个HTML选项元素。
你需要检查:
console.log(selectedObj.tagName)
注意使用console.log()是一个比alert()更容易调试的选项。
相关文章:
- 如何通过$.getScript()获取脚本文件
- 获取脚本中CSS颜色属性的实际值
- 使用AJAX在我的域内获取脚本
- 如何使用 ajax 实时搜索获取脚本文本框中的搜索值
- 使用 PHP 从网页获取脚本内容
- JS从内部获取脚本参数
- 从脚本标记内部获取脚本标记的父级
- JavaScript 脚本执行时间太长.获取脚本需要太长时间提示
- 有没有办法全局获取脚本文件
- 使用此值选择选项获取脚本
- 如何在 V8 中获取脚本的源文件名
- Delphi Chromium Embedded(TChromium)-获取脚本输出
- 如何使用RequireJS获取脚本URL
- 在加载angular之前从服务器获取脚本位置
- 从服务器获取脚本位置
- 正在分析HTML以获取脚本变量值
- 使用cURL获取脚本内容
- IE在添加到onclick处理程序时从缓存中获取脚本(动态添加)
- 如何获取脚本's在.append()中的值
- 使用本地javascript获取脚本文件的内容