問題描述
我有一個包含以下 div 元素的頁面:
<div id="myDiv" class="myDivClass" style="">Some Value</div>
如何透過 JQuery 或透過標準 JS 檢索值 (“Some Value”)?我試過了:
var mb = document.getElementById("myDiv");
但偵錯程式控制檯顯示 「mb 為空」 。只是想知道如何檢索這個值。
—-更新—-當我嘗試建議我得到:$不是一個功能
這是 JQuery 事件處理程序的一部分,我在單擊一個按鈕時嘗試讀取該值。處理函式正在工作,但它不能解釋 jQuery 值似乎:
jQuery('#gregsButton').click(function() {
var mb = $('#myDiv').text();
alert("Value of div is: " + mb.value);
});
最佳解決方法
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 );
}
}
}
次佳解決方法
$('#myDiv').text()
雖然你最好做一些像:
var txt = $('#myDiv p').text();
alert(txt);
<script src="https://googleajax.admincdn.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="myDiv"><p>Some Text</p></div>
確保你也連結到你的 jQuery 檔案:)
第三種解決方法
如果你的 div 看起來像這樣:
<div id="someId">Some Value</div>
你可以用 jquery 這樣檢索它:
$('#someId').text()
第四種方法
你的 div 看起來像這樣:
<div id="someId">Some Value</div>
用 jquery:
<script type="text/javascript">
$(function(){
var text = $('#someId').html();
//or
var text = $('#someId').text();
};
</script>
第五種方法
你可以使用
jQuery('#gregsButton').click(function() {
var mb = jQuery('#myDiv').text();
alert("Value of div is: " + mb);
});
看起來可能與使用 $的衝突。請記住,變數’mb’ 將不能在事件處理程序之外訪問。另外, text() 函式返回一個字串,不需要得到 mb.value 。
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。