我正在尝试使用放在头部的脚本来访问head标记的属性。
<head myattr="123">
<script src="/Scripts/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
alert($("head").attr("myattr"));
</script>
...
我不能使用包含或&lt;%#“123%&gt;或&lt;%=”123%&gt;在.net中“因为代码执行顺序和页面标题dabinding。所以我只是从代码隐藏设置头部属性。
无论如何,问题是:我接近问题的方式有问题吗?
当我致电alert($("head").attr("myattr"));
我可以得到undefined
回复时,是否有可能?
我假设<head myattr="123">
发生在调用alert(...)
脚本之前,我不会收到undefined
警告......我错了吗?
$(document).ready(...
。
我基本上担心是否有任何未知因素,例如兼容性问题等,我没有考虑到这一点。也许有些浏览器会返回undefined而不是?也许在某些情况下它可以执行得太早?
答案 0 :(得分:2)
我认为你不会得到一个未定义的因为你说它在HTML中比你的脚本更高。但是,将你的调用包装在$(文件)中也不会有什么坏处。就像这样。
$(document).ready(function () {
alert($("head").attr("myattr"));
})
只要设置了“myattr”,就不应该返回undefined。
答案 1 :(得分:1)
没关系,因为你的脚本在head标签之后/之内。但是,myattr
会使您的HTML无效。
答案 2 :(得分:0)
alert($("head:first").attr("myattr"));
答案 3 :(得分:0)
在加载DOM后进行alert()
调用,如下所示:
$(function() {
alert(...)
});