IE8下Jquery获取select选中的值post到后台报错问题
IE8下Jquery获取select选中的值post到后台报错问题
发布时间:2016-12-30 来源:查字典编辑
摘要:我们一般使用jquery获取select时,一般这么用:varselectedValue=$("#a").val();在非IE8下,sele...

我们一般使用jquery获取select时,一般这么用:

<select id='a'> <option selected='selected' value='1'> </select> var selectedValue = $("#a").val();

在非IE8下,selectedValue的值为“1”,typeof selectedValue 为“string”。

在IE8下,selectedValue的值为[“1”],typeof selectedValue 为 “objectg”。

如果直接将selectedValue post发送到后台,后台接收时会报错,因为在传输过程中,IE8下selectedValue当成了数组,后台无法识别。

解决的代码如下:

selectedValue = typeof selectedValue == "object" ? selectedValue[0] : selectedValue;

这样selectedValue为字符串了。

​另外这样会引发其他的问题:

var a = selectedValue.trim();

这段代码在IE8下无法执行,可能的原因也是由于上述所致。

​使用如下代码就确保可以运行:

$.trim(selectedValue);

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类