IE8下Jquery获取select选中的值post到后台报错问题

我们一般使用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);
(0)

相关推荐

  • Eclipse下jQuery文件报错出现错误提示红叉

    使用Eclipse 3.7时,工程中加入jquery.xx.js文件,发现该文件出现错误提示(红×),但使用Eclipse 3.7以前的版本就不会出现这种提示.是因为Eclipse 3.7在.project配置文件中,加入了JS验证框架org.eclipse.wst.jsdt.core.javascriptValidator.加入该框架后,如果js文件书写规则不符合规范就会报错.但是工程仍然可以正常运行.于是考虑为了不让错误提示影响心情,删之.工程亦可正常运行. 操作如下: 在该工程根目录下,找

  • jquery库或JS文件在eclipse下报错问题解决方法

    在工程中导入jquery-1.7.1之后一直有一个红叉叉,虽然不会影响程序功能,但是看着非常不舒服,而且在提交项目代码到SVN服务器的时候有提示,决心把这红叉叉给搞掉.网上搜了下基本都不能解决问题,然后在尝试各种方式之后发现下面的方法可行: 1右击工程,选择property. 2在弹出的界面中选择Validation 3点击右边的JavaScript Syntax Validator的Settings 4在弹出的窗口中点击Add Exclude Group 5在Exclude Group中把jq

  • eclipse导入jquery包后报错的解决方法

    eclipse导入jquery包后报错,处理步骤如下: 1.打开项目.project文件,去掉如下内容: 复制代码 代码如下: <buildCommand> <name>org.eclipse.wst.jsdt.core.javascriptValidator</name> <arguments> </arguments> </buildCommand> 2.删除原来的js,重启重新复制一份,因为原来的文件已被eclipse项目标记为

  • JQuery报错Uncaught TypeError: Illegal invocation的处理方法

    Jquery实现Ajax异步提交时报错"Uncaught TypeError: Illegal invocation",如下图: 排查发现错误在于此: 复制代码 代码如下: data:{"search_value":$('input[name=search_value]'),"order_source":buyerType,"order_status":orderType} $('input[name=search_value

  • jQuery setTimeout传递字符串参数报错的解决方法

    当你打算调用一些jQuery代码显示隐藏的一个元素,并调用setTimeout()在一段延时之后设置其HTML的内容: 整个页面的代码是这样的. 复制代码 代码如下: <span style="font-size:18px;"><html> <head> <title></title> </head> <body> <a href="#" id='heihei' onclick

  • IE8下Jquery获取select选中的值post到后台报错问题

    我们一般使用jquery获取select时,一般这么用: <select id='a'> <option selected='selected' value='1'> </select> var selectedValue = $("#a").val(); 在非IE8下,selectedValue的值为"1",typeof selectedValue 为"string". 在IE8下,selectedValue

  • jQuery 获取select选中值及清除选中状态

    不会使用jQuery的后台真心伤不起,获取select下拉列表的值都让我搞了好一阵,然而并没有结束,恢复选中状态也是花了我半个小时. 这里先记一下省的以后会忘了. 获取jQuery中select下拉列表中的lang属性值: <span style="font-size:14px;"> var provinceSearch = $("#loc_province_search").find("option:selected").attr(

  • jquery获取select选中值的方法分析

    本文实例讲述了jquery获取select选中值的方法.分享给大家供大家参考,具体如下: 误区: 以前一直以为jquery获取select中option被选中的文本值,是这样写的: 复制代码 代码如下: $("#s").text(); //获取所有option的文本值 实际上应该这样: 复制代码 代码如下: $("#s option:selected").text(); //获取选中的option的文本值 获取select中option的被选中的value值: $(

  • jQuery获取select选中的option的value值实现方法

    如下所示: <select id="isshow" name="isshow" style="width: 100px"> <option value="1">显示</option> <option value="2">不显示</option> </select> var isshow = $("#isshow ")

  • jquery获取select选中值的文本,并赋值给另一个输入框的方法

    html 代码: <select id="ReviewStatus" name="ReviewStatus"><option selected="selected" value="0">空号</option> <option value="1">不接</option> <option value="2">不需要<

  • jQuery获取checkbox选中的值

    1.问题背景 有几个多选框,选择其中的几个,获取选中的值 2.设计结果如下图所示: 3.设计源码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">

  • Jquery获取radio选中的值

    话不多说,请看代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> new docum

  • 用jquery获取select标签中选中的option值及文本的示例

    1.要想使用jquery首先html或者jsp中得引入jquery文件. 2.话不多说,上代码. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "h

  • jquery根据name取得select选中的值实例(超简单)

    实例如下所示: <select name="region[province]" id="" class="region valid"> <option value="0" selected="selected" tier="1">省.直辖市</option> <option tier="1" value="2&quo

  • jquery中获取select选中值的代码

    jquery获取select选择的文本与值 获取select 选中的 text : $("#ddlregtype").find("option:selected").text(); 获取select选中的 value: $("#ddlregtype ").val(); 获取select选中的索引: $("#ddlregtype ").get(0).selectedindex;

随机推荐