[英]Grab html element value
我如何使用php或javascript来获取html元素值? 我尝试将jQuery与DOM ready事件一起使用,但是问题是我想获取的值是从某个位置动态加载的,并且当我将jQuery与DOM ready事件一起使用时,大多数情况下DOM已准备好,但是元素是空的(它仍然没有加载),当我用jQuery抓取值时,它给出了元素的空值,因为我是在元素加载之前抓取它的。
加载后如何获取值? 是否存在某种触发或事件?
任何帮助/想法表示赞赏!
公认的解决方案有效,但我认为这更好:
<script type="text/javascript">
var bool = false;
jQuery('.element').bind('DOMNodeInserted', function() {
if(bool == false) {
alert("DOM NODE INSERTED !");
bool = true;
}
});
</script>
您可以使用类似这样的东西。
$("#Blaah").load(function(){
//Code
});
当然,您不必使用id,可以使用任何CSS选择器来检测何时加载元素。
获取本地元素的内容
$(function() {
// after doc loads will get innerHTML of #myElement
var elementContents = $("#myElement").html();
});
获取文件元素的内容
$(function() {
$("#myDiv").load("ajax/test.html #container");
});
尝试如下使用window.load:
$( window ).load(function() {
// Run code
});
这将确保页面首先被完全加载
根据您的评论。 您不能像这样将load事件分配给单个元素。 如果要使用window.load事件,则需要等待所有元素被加载(整个页面)。 但是,我可以建议您的情况如下:
function checkStatus() {
var check = $(#yourELEMENT NAME)
if (check == null) {
//Change the time to whatever you like
setTimeout("checkStatus()", 100);
} else {
...
}
}
在这种情况下,您将等待一段时间,直到元素加载足以设置元素,然后您可以根据需要对其进行操作。 最后,请接受适合您的答案。
这听起来不像PHP,但更像JavaScript。
如果在呈现页面后加载元素(带有值),则通常可以将script元素放在页面底部。
如果您正在等待用户/浏览器的某些更改,则需要附加到事件,例如onClick,onChange,onBlur,onMouseover,onKeypress等。
如果您在谈论其他事情,但特别是使用jQuery,则jQuery拥有自己的ready函数:
$( document ).ready(function() {
console.log( "ready!" );
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.