簡體   English   中英

獲取數據屬性值

[英]Get data attribute value

我正在使用下面的代碼來獲取數據屬性值。 但是不管我選擇了什么,我都只會得到foreach循環的第一個值。

foreach($values as $opvalue){
            ?>
            <?php  echo $opvalue->getTitle(); ?>
            <?php echo $opvalue->getId(); ?>
            <input type="radio" data-sareeid="<?php echo $opvalue->getId(); ?>" id ="sareefinishing" name="sareefinishing" value="<?php echo $opvalue->getTitle(); ?>" />

        <?php
        }

JavaScript代碼:

var sareeOption = document.getElementById('sareefinishing');
    alert(sareeOption.dataset.sareeid);

從下面的圖片,它總是提醒61818.相關的問題在這里 在此處輸入圖片說明

ID在您的代碼中應該是唯一的,否則它將始終選擇第一個。 因此,您需要使用類。 您被標記為jQuery,所以可以使用data()做類似的事情

var sareeOption = $('.sareefinishing:checked');
alert(sareeOption.data('sareeid'));

小提琴

$("input[name=qwe]").change(function(){
if($(this).is(':checked')){
    alert($(this).val())
}
})

您可以這樣操作,使用名稱,然后在單選按鈕中進行更改以獲取值,然后發出警報

任何給定的文檔中都不能有重復的ID。 因此,使用類。 這是一個純JavaScript解決方案。

 var radios = document.querySelectorAll('.sareefinishing'); [].forEach.call(radios, function(radio) { radio.addEventListener("change", function() { alert (this.dataset.sareeid); }, false); }); 
 <input type="radio" class="sareefinishing" data-sareeid="10" name="sareefinishing" value="10" /> <input type="radio" class="sareefinishing" data-sareeid="20" name="sareefinishing" value="20" /> <input type="radio" class="sareefinishing" data-sareeid="30" name="sareefinishing" value="30" /> <input type="radio" class="sareefinishing" data-sareeid="40" name="sareefinishing" value="40" /> 

另一個演示 ,它在單擊按鈕時顯示所選單選按鈕的sareeid

暫無
暫無

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

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