jQuery 取值问题

「已注销」 2011-02-12 01:49:31
今天遇到一个奇怪的问题:
t1 = $("#t1").val();
报错;
改为
s1 = $("#t1").val();
正确。
这是什么原因???

...全文
138 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
bennman 2011-02-12
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 thc1987 的回复:]

因为IE浏览器可以直接id.属性的
HTML code
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<meta http-equiv="content-type" content="text/html; charse……
[/Quote]

+1 IE浏览器可以直接id.属性的 这样说最清楚!
猿敲月下码 2011-02-12
  • 打赏
  • 举报
回复
因为IE浏览器可以直接id.属性的
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />

<SCRIPT LANGUAGE="JavaScript">
<!--
function init(){
alert(t1.value)
}
//-->
</SCRIPT>
</HEAD>
<BODY onload="init()">
<INPUT id="t1" TYPE="text" value="123">
</BODY>
</HTML>
bennman 2011-02-12
  • 打赏
  • 举报
回复

<script type="text/javascript">
$(function(){
t1=$('.t1').val();
alert(t1)
});
</script>
<input type="text" class="t1" value="123"/>

不会报错
bennman 2011-02-12
  • 打赏
  • 举报
回复
t1 s1 没用申明 系统可以自动声明两个全局变量
因为页面里有 定义了么个元素的 id='t1'
所以在IE下 就会报错!

你把页面里的 id=t1 去掉

t1=123;
alert(t1)
就不会报错了
zell419 2011-02-12
  • 打赏
  • 举报
回复
多来点代码 。瞧瞧 。
仲兴轩 2011-02-12
  • 打赏
  • 举报
回复
用var t1 = $("#t1").val();


wan
gouxiongyaya 2011-02-12
  • 打赏
  • 举报
回复
不是吧,可不可以多贴点代码
「已注销」 2011-02-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zell419 的回复:]
t1 没有定义 。
只能这么说了 。
[/Quote]

s1也没定义啊,为什么s1可以?
zell419 2011-02-12
  • 打赏
  • 举报
回复
t1 没有定义 。
只能这么说了 。

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧