更新:澄清的问题(我希望) 嗨。如何避免JavaScript从不存在的元素中检索值
我正在开发中的WordPress插件,我根据用户权限A和B.
输出元件在A的情况下,我输出中元素“富”。
在B的情况下,我输出元素“Bar”。
直到现在,我还没有检查是否存在一个元素,然后尝试检索该值。 这当然给了我一些浏览器(如IE7)的JavaScript错误。
我看了使用typeof()
功能:
if(typeof(element) == 'undefined') {
//do something...
}
我也使用jQuery。所以一个解决方案可以使用这个:
if ($("#mydiv").length > 0){
// do something here
}
使用上述方法,使我必须在尝试检索任何值之前检查每个元素。
“理想”解决方案是根据用户权限获取值。 E.g:
if (userPriv == A) {
//get values from element 'Foo'
}
这样我可以检查一次,并做了数据收集。我能想到的唯一解决方案是设置隐藏的输入元素的值或使用cookie。
<input type="hidden" id="userPriv" value="A" />
另一种解决方案是向cookie添加一个值。
setcookie("userPriv", "A");
不幸的是,这最后一个选项给了我一个警告消息,说cookie必须在标题中设置(在html输出之前)。我认为这是因为我在Wordpress中这样做。
我在寻找哪种方法是“最好的方法”来实现这一目标的意见。
我不明白你的问题是什么。它访问可能不存在的dom元素吗?它在Wordpress中获得用户权限吗?它是否测试了一些dom元素作为衡量用户权限的方式? – Alsciende 2009-06-16 09:26:39
当我回答你时,我正在考虑某些问题,但在查看评论和更新后,我不确定是否正确理解了你的问题。你能否澄清一下,你想检查什么?你究竟在问什么? – 2009-06-16 09:50:54