簡體   English   中英

無法通過 Javascript 的 class 名稱獲取元素的值?

[英]Can't get an element's value by class name with Javascript?

我有一個來自 Caspio 數據庫的患者編號,該編號發布在我的網站上。 我想提取這個號碼並將其保存為 Javascript var patientNumber。 我試圖通過 ClassName、ID、Name 來做到這一點,但沒有任何效果。 我得到“未定義”返回給我。

這是 Inspector 屏幕的屏幕截圖。 https://recordit.co/MUAGMqpUgn

我的目標是 HTML 標簽:

<dd class="cbResultSetData cbResultSetNestedAlign">ClinicA11-PF-TR1-P1</dd>

這是我嘗試過的代碼。

<?php
add_action( 'wp_head', function () { ?>
<script type="text/javascript">  
function getPatientNumber(){  
    var patientNumber;
/*  var patientNumber = document.getElementsByName('DataCtnr');*/
    var patientNumber = document.getElementsByClassName("dd.cbResultSetData.cbResultSetNestedAlign")[0];
/*  var patientNumber=document.getElementById("cbTable_51135f773f94b4");  */
    alert(patientNumber);
}
</script>
<?php } );

嘗試在這一行的末尾添加 innerText - var patientNumber = document.getElementsByClassName("dd.cbResultSetData.cbResultSetNestedAlign")[0]; 像這樣

var patientNumber = document.getElementsByClassName("dd.cbResultSetData.cbResultSetNestedAlign")[0].innerText;

你的表情:

document.getElementsByClassName("dd.cbResultSetData.cbResultSetNestedAlign")

不會 select 您正在尋找的元素。 正如所寫,它正在尋找具有以下特征的元素:

class="dd.cbResultSetData.cbResultSetNestedAlign"

這不是您想要的元素。

這個表達式:

document.getElementsByClassName("cbResultSetData cbResultSetNestedAlign")

將 select 所有元素與:

class="cbResultSetData cbResultSetNestedAlign"

但是對於 select 具有這些類的第一個<dd>元素,您可以使用:

document.querySelector("dd.cbResultSetData.cbResultSetNestedAlign");

這將 select 第一個元素看起來像這樣:

<dd class="cbResultSetData cbResultSetNestedAlign">

 let dd = document.querySelector('dd.cbResultSetData.cbResultSetNestedAlign'); console.log('dd:', dd); let results = document.getElementById('results'); results.innerHTML = dd.innerHTML;
 The DD tag:<br/> <dd class="cbResultSetData cbResultSetNestedAlign">ClinicA11-PF-TR1-P1</dd> <br/> Results: <span id="results"></span>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM