問題描述

我有一個包含以下 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 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。