首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >IE问题中的this.value

IE问题中的this.value
EN

Stack Overflow用户
提问于 2012-10-25 16:07:12
回答 8查看 2.1K关注 0票数 1

我在IE(7-9)中使用this.value有问题。我使用以下代码:

代码语言:javascript
运行
复制
<script language="javascript" type="text/javascript">
  $(document).ready(function(){
    $(".inputbox").keyup(function(){
      value = this.value;
      $("#searchRe").load("suggestionSearch.php?value=" + value);
    });
});    
</script>

这在火狐和Chrome中有效,但在IE中不要将"value“传递给"suggestionSearch.php”。我认为value = this.value是个问题。请帮帮我:)

注意:.inputbox是一个文本框。

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2012-10-31 22:51:48

我试过你的代码,看起来运行得很好;

代码语言:javascript
运行
复制
<!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></title>
    </head>
    <body>
        <input type="text" class="inputbox" />
        <div id="searchRe"></div>
        <script type="text/javascript" src="http://code.jquery.com/jquery-1.6.4.js" ></script>
        <script language="javascript" type="text/javascript">
          $(document).ready(function(){
            $(".inputbox").keyup(function(){
              value = this.value;
              $("#searchRe").load("s.php?value=" + value);
            });
        });    
        </script>
    </body>
</html> 

这是我的php临时代码(因为你还没有指定你的代码)

代码语言:javascript
运行
复制
<?php

    echo $_GET['value'];

?>

你能给我们更多的信息吗?(例如,php文件返回什么类型的数据)

编辑:

替换这个

代码语言:javascript
运行
复制
$("#searchRe").load("s.php?value=" + value);

使用这一条

代码语言:javascript
运行
复制
$("#searchRe").load("s.php?value=" + encodeURIComponent(value));

请注意函数encodeURIComponent,跟随this link获取更多信息。

票数 2
EN

Stack Overflow用户

发布于 2012-10-25 16:10:21

由于您已经在使用jQuery,所以只需尝试使用jquery来获取值,使用下面的代码行

代码语言:javascript
运行
复制
var value = $(this).val()

jQuery可以很好地处理任意浏览器行为。

编辑

这是一个在IE上工作的快速解决方案,你可以根据自己的需要进行修改。

http://jsfiddle.net/FeRsB/

票数 5
EN

Stack Overflow用户

发布于 2012-11-01 18:20:01

您的页面上是否有带有id = "value"的元素?在这种情况下,IE将为其创建一个名为value的全局变量,并拒绝将全局变量值赋给其他变量。

如果这就是正在发生的事情,那么解决方案就像这样简单

代码语言:javascript
运行
复制
<script language="javascript" type="text/javascript">
    $(document).ready(function(){
        $(".inputbox").keyup(function(){
            var value = this.value;
            $("#searchRe").load("suggestionSearch.php?value=" + value);
        });
    });    
</script>

(请注意value前面的var )。不管怎样,这是你应该做的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13064257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档