我有一个包含以下div元素的页面:
<div id="myDiv" class="myDivClass" style="">Some Value</div>
如何通过JQuery或标准JS检索值(“Some Value”)?我试过了:
var mb = document.getElementById("myDiv");
但调试器控制台显示“mb为null”。只是想知道如何检索这个值。
----更新---- 当我尝试这个建议时,我得到:$不是函数
这是JQuery事件处理程序的一部分,我在单击按钮时尝试读取值。处理程序函数正在运行,但它无法解释它看起来的jQuery值:
jQuery('#gregsButton').click(function() {
var mb = $('#myDiv').text();
alert("Value of div is: " + mb.value);
});
答案 0 :(得分:59)
$('#myDiv').text()
虽然你最好做一些像:
var txt = $('#myDiv p').text();
alert(txt);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="myDiv"><p>Some Text</p></div>
确保您也链接到您的jQuery文件:)
答案 1 :(得分:24)
myDivObj = document.getElementById("myDiv");
if ( myDivObj ) {
alert ( myDivObj.innerHTML );
}else{
alert ( "Alien Found" );
}
上面的代码将显示innerHTML,即如果你在div中使用了html标签,那么它也会显示出来。可能这不是你所期望的。所以另一种解决方案是使用:innerText / textContent属性[thanx to bobince,见他的评论]
function showDivText(){
divObj = document.getElementById("myDiv");
if ( divObj ){
if ( divObj.textContent ){ // FF
alert ( divObj.textContent );
}else{ // IE
alert ( divObj.innerText ); //alert ( divObj.innerHTML );
}
}
}
答案 2 :(得分:13)
如果你的div看起来像这样:
<div id="someId">Some Value</div>
你可以用这样的jquery检索它:
$('#someId').text()
答案 3 :(得分:6)
你的div看起来像这样:
<div id="someId">Some Value</div>
使用jquery:
<script type="text/javascript">
$(function(){
var text = $('#someId').html();
//or
var text = $('#someId').text();
};
</script>
答案 4 :(得分:2)
您可以使用
jQuery('#gregsButton').click(function() {
var mb = jQuery('#myDiv').text();
alert("Value of div is: " + mb);
});
看起来使用$可能存在冲突。请记住,变量“mb”在事件处理程序之外是不可访问的。另外,text()函数返回一个字符串,不需要获取mb.value。
答案 5 :(得分:1)
您还可以使用innerhtml获取标记内的值....
答案 6 :(得分:-1)
您可以使用
获取ID值
test_alert = $('#myDiv').val();
alert(test_alert);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="myDiv"><p>Some Text</p></div>