200分求解决一eval问题
<script language= "javascript ">
function test(obj)
{
alert(obj.id);
}
var obj = document.getElementById( "a ");
eval( "test( "+obj+ ") ");
</script>
<div id= "a "> test </div>
我想通过eval调用一个带参数(参数为一对象)的函数,代码如上所示, 在test()中获取到的obj为undefine, 如何才能在这里得到div对象?多谢!
[解决办法]
那是因为你的DIV还没有加载,脚本就执行了,因为没有找到该对象,所以提示undefined
你可以这样:
<div id= "a "> test </div>
<script language= "javascript ">
function test(obj)
{
alert(obj.id);
}
var obj = document.getElementById( "a ");
eval( "test( "+obj+ ") ");
</script>
[解决办法]
<div id= "a "> test </div>
<script language= "javascript ">
function test(obj)
{
alert(obj.id);
}
var obj = document.getElementById( "a ");
eval( "test(obj) ");
</script>
[解决办法]
对象不能进行并运算...
[解决办法]
信誉还可以低到4这种地步。。还误导别人
应该是这样
<script language= "javascript ">
function test(obj)
{
alert(obj.id);
}
var obj = document.getElementById( "a ");
eval( "test(obj); ");
</script>
<div id= "a "> test </div>
注意,eval()执行的就是JS代码,不用再引用具体变量
[解决办法]
这年头...
[解决办法]
4个裤衩的提出这种问题。。。。。。
还这么多分。。。。。。
[解决办法]
DIV还要先加载
<div id= "a "> test </div>
<script language= "javascript ">
function test(obj)
{
alert(obj.id);
}
var obj = document.getElementById( "a ");
eval( "test(obj); ");
</script>
[解决办法]
让大家失望了 - -!
[解决办法]
吃粽子
[解决办法]
4个裤衩的提出这种问题。。。。。。
还这么多分。。。。。。
---------------------------------------
不要这么说嘛,也许人家的裤衩是从别的地方捡来的呢
[解决办法]
把引号去掉试下eval(test(obj));
[解决办法]
如果引号去掉不行的话,那就是div还没生成,如果你把 <script> 这里面的代吗放在body中是不行的,页面加载先执行 <script> 的代码,而你的div还没生成,所以出现undefine
[解决办法]
直接test(obj)
------解决方案--------------------
1.先div
2.eval( "test(obj); ");
[解决办法]
你的代码没看见getName()方法,把相关代码,简单的html一起贴出来呀,别的代码就不要贴了
[解决办法]
DIV没有加载的话,把函数用onload触发不就可以先加载页面,然后取得页面里的div了吗。
[解决办法]
哈哈。。可怜的石头同学。。。
[解决办法]
爱,可怜啊。哈
[解决办法]
xmlObj.responseXML
这个返回的是什么
也就是alert(obj);这个弹出来的是什么
两次是一样的吗
[解决办法]
eval(func + "(obj) ");
[解决办法]
<div id= "a "> test </div>
<script language= "javascript ">
function test(obj)
{
alert(obj.id);
}
var obj = document.getElementById( "a ");
eval(test(obj));
</script>
把引号拿掉啊!
你这也能算是问题吗?如果要
eval(test(obj));
还不如直接
test(obj)
[解决办法]
搞不懂你要干什么?
[解决办法]
不要死陷在 eval 上,解决这类问题的办法有很多,比如你把 eval 那句代码换成:
(new Function(func + "(obj) "))();
[解决办法]
梅老大的信誉:
meizz(梅花雪) ( ) 信誉:707
eval只是检索变量,属性,对像,并返回其值,调用DIV,用JS中INNER.HTML会比较好点
[解决办法]
你把函数指针直接传进去多好,干什么非传函数名。。。
[解决办法]
下面是我对你意思的理解,仅供参考
<script language= "javascript ">
function getHandle(obj){
var str= "handle_ "+obj.id
eval(str+ "(obj) ")
}
function handle_button1(obj){
alert( "乱7八糟 "+obj.id)
}
function handle_button2(obj){
alert( "啥也不是 "+obj.id)
}
function handle_button3(obj){
alert( "听到没有 "+obj.id)
}
</script>
<body>
<input type= "button " id= "button1 " onClick= "getHandle(this) " value= "button1 "/>
<input type= "button " id= "button2 " onClick= "getHandle(this) " value= "button2 "/>
<input type= "button " id= "button3 " onClick= "getHandle(this) " value= "button3 "/>
</body>
[解决办法]
因为你的DIV还没有加载,脚本就执行了
[解决办法]
这个世界乱套了
[解决办法]
男人所谓高尚,高尚是因为受到的诱惑还不够;
女人也无所谓忠诚,忠诚是因为背叛的筹码不够高。