js 小问题,大家来看下

passself 2010-03-31 04:12:00

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>js测试</title>
<script src="jquery-1.3.2.js"></script>
<script>
$(document).ready(function(){

});
</script>
<script>
function test(e,id){
var temp_id = id;
alert(id)
var temp = document.form1.txt1.value;//txt1非变量
alert("非变量的值为:"+temp)
var temp1 = document.form1.temp_id.value;//这里得到的id为txt1会报错怎么回事?
alert(temp1)
}
</script>
</head>
<body>
<form id="form1" name="form1">
<input id="txt1" name="text1" onkeydown="test(event,$(this).attr('id'));" /><br />
<input id="txt2" name="text2" onkeydown="test(event,$(this).attr('id'))"/>
</form>
</body>
</html>

...全文
129 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
passself 2010-04-01
  • 打赏
  • 举报
回复
楼上的你试了吗?好像不可以
zyzy15 2010-04-01
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 lieri111 的回复:]
大家好,我的var temp = document.form1.txt1.value;//如果form1 和txt1的位置都是变量怎么办?
[/Quote]


<script>
function test(e,id,formId){
var tempObj = eval(formId+"."+id);//直接拼出"form1.txt1"

alert(id);
var temp = document.form1.txt1.value;
alert("非变量的值为:"+temp);
var temp1 = tempObj.value;
alert(temp1);
}
</script>
<form id="form1" name="form1">
<input id="txt1" name="text1" onkeydown="test(event,'txt1','form1')" /><br />
<input id="txt2" name="text2" onkeydown="test(event,'txt2','form1')"/>
</form>
VirusFu 2010-04-01
  • 打赏
  • 举报
回复
1楼正解
橘色蝴蝶 2010-04-01
  • 打赏
  • 举报
回复
哦,明白了……能不能删自己的回复的呀?
橘色蝴蝶 2010-04-01
  • 打赏
  • 举报
回复
[Quote=引用楼主 lieri111 的回复:]
<script>
function test(e,id){
var temp_id = id;
alert(id)
var temp = document.form1.txt1.value;//txt1非变量
alert("非变量的值为:"+temp)
var temp1 = document.form1.temp_id.value;//这里得到的id为txt1会报错怎么回事?
alert(temp1)
}
[/Quote]

为什么要这么复杂?不是temp1=temp_id就可以了吗?
不明白……
passself 2010-04-01
  • 打赏
  • 举报
回复
大家好,我的var temp = document.form1.txt1.value;//如果form1 和txt1的位置都是变量怎么办?
xiaonieya 2010-04-01
  • 打赏
  • 举报
回复
学习下
passself 2010-04-01
  • 打赏
  • 举报
回复
楼上的没有你想象的那么简单,我得到的是中间值,还要用,17楼你的的确不可以,在ff下
vnetcbd 2010-04-01
  • 打赏
  • 举报
回复
既然用了 jquery 为何不完美运用呢

<script src="jquery-1.3.2.js"></script>
<script>
function test(i){

var id = $('#form1').find('input').eq(i).attr('id');
var text = $('#form1').find('input').eq(i).attr('name');
alert('你点击了的ID名称为'+id);
alert("你点击的这个ID为"+id+"的name为"+text);
}
</script>

<form id="form1" name="form1">
<input id="txt1" name="text1" onkeydown="test(0);" /><br />
<input id="txt2" name="text2" onkeydown="test(1)"/>
</form>

zyzy15 2010-04-01
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 lieri111 的回复:]
楼上的你试了吗?好像不可以
[/Quote]
我试了呀,好像可以……
我用的IE8
huangminyanghe 2010-03-31
  • 打赏
  • 举报
回复
所以大家以后一定要小心啊!js后直接是字符串处理而不是会计算值的,
春春 2010-03-31
  • 打赏
  • 举报
回复
document.getElementById(temp_id).value;
shan1119 2010-03-31
  • 打赏
  • 举报
回复
passself 2010-03-31
  • 打赏
  • 举报
回复
谢谢一楼我也误解你了
lianqin7 2010-03-31
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 lianqin7 的回复:]
var temp1 = document.form1.temp_id.value;//这里得到的id为txt1会报错怎么回事?
temp_id要用temp_name
form元素后只能跟name
[/Quote]
理解错了,不好意思,无视5L的帖子吧。。
lianqin7 2010-03-31
  • 打赏
  • 举报
回复
var temp1 = document.form1.temp_id.value;//这里得到的id为txt1会报错怎么回事?
temp_id要用temp_name
form元素后只能跟name
shan1119 2010-03-31
  • 打赏
  • 举报
回复
temp_id是変量、不是画面項目
shan1119 2010-03-31
  • 打赏
  • 举报
回复
document.form1[temp_id].value
passself 2010-03-31
  • 打赏
  • 举报
回复
var temp_id = id;
这个不是吗?楼上的请你看清楚再说
shan1119 2010-03-31
  • 打赏
  • 举报
回复
画面無temp_id項目

87,910

社区成员

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

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