第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

在 JavaScript HTML 中呈現(xiàn)具有相同 ID 的多個(gè)元素

在 JavaScript HTML 中呈現(xiàn)具有相同 ID 的多個(gè)元素

catspeake 2023-05-11 16:49:35
我正在嘗試在一個(gè) HTML 頁面中呈現(xiàn)具有相同 ID 的多個(gè)條形碼。下面是我的代碼。    <html><head>  <meta charset="UTF-8">  <script src="https://cdnjs.cloudflare.com/ajax/libs/jsbarcode/3.11.3/JsBarcode.all.min.js"></script></head><body><img id="barcode"   jsbarcode-value="123456" /><img id="barcode"    jsbarcode-value="654321" /><script>      var element = document.querySelectorAll("#barcode");      for(var i = 0; i < element.length; i++)           JsBarcode(element, {        format: "code39",        lineColor: "#0aa",        width: 4,        height: 40,        displayValue: false});      </script></body></html>但是當(dāng)我在 Chrome 中打開時(shí),我得到一個(gè)空白頁面。請(qǐng)幫助我了解如何使用唯一 ID 進(jìn)行渲染。
查看完整描述

3 回答

?
白豬掌柜的

TA貢獻(xiàn)1893條經(jīng)驗(yàn) 獲得超10個(gè)贊

所以問題是傳遞給 JsBarcode 方法的第一個(gè)參數(shù)是一個(gè)元素。您需要傳遞 jquery id 的字符串。如果您查看他們的文檔,它有以下內(nèi)容:


JsBarcode("#barcode", "1234", {

format: "pharmacode",

lineColor: "#0aa",

width: 4,

height: 40,

displayValue: false

});

注意第一個(gè)參數(shù)是“#barcode”而不是實(shí)際元素。在您的情況下,看起來您正在傳遞的元素不是 JsBarcode 所期望的。我看到了你的問題,我能夠讓它與以下一起工作:


<svg name="barcode" 

  jsbarcode-value="123456"

/>


<svg name="barcode"

  jsbarcode-value="654321"

/>


<script>

  var elements = document.getElementsByName("barcode");

  for(var i = 0; i < elements.length; i++)        {

  var id = elements[i].name + "i";

  elements[i].id = id;

  var value = elements[i].getAttribute("jsbarcode-value");

  JsBarcode("#" + id, value, {

    format: "code39",

    lineColor: "#0aa",

    width: 4,

    height: 40,

    displayValue: false

  });

}     

</script>

總之,我將頁面上的所有元素都更改為名稱=“條形碼”而不是 id。然后在 for 循環(huán)中使用 name 和 incrementor 設(shè)置 id,用于將唯一 id 傳遞給 JsBarcode 并從屬性中獲取值。


查看完整回答
反對(duì) 回復(fù) 2023-05-11
?
慕斯王

TA貢獻(xiàn)1864條經(jīng)驗(yàn) 獲得超2個(gè)贊

在你的 for 循環(huán)中有一個(gè)錯(cuò)誤


您將作為數(shù)組的元素作為第一個(gè)屬性傳入 JsBarcode


像那樣正確


  var element = document.querySelectorAll("#barcode");

  [].forEach.call(element, function(elem){

    JsBarcode(elem, {

    

    format: "code39",

    lineColor: "#0aa",

    width: 4,

    height: 40,

    displayValue: false

    });

  })


查看完整回答
反對(duì) 回復(fù) 2023-05-11
?
智慧大石

TA貢獻(xiàn)1946條經(jīng)驗(yàn) 獲得超3個(gè)贊

html 頁面上不能有多個(gè)具有相同值的 id。針對(duì)您的情況的一種解決方案是使用類更改 id,然后使用選擇器使用該類。

將 id="barcode" 更改為 class="barcode",然后

document.querySelectorAll(".barcode");


查看完整回答
反對(duì) 回復(fù) 2023-05-11
  • 3 回答
  • 0 關(guān)注
  • 403 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)