Ich habe Funktion in meinem JQuery, die Wert in #product_detail mit Daten-Name = Wert füllen wird, zum ersten Mal war es Erfolg, wenn ich zum zweiten Mal versuchte, es zeigen nur den ersten Wert, auch wenn ich inspiziere elemen in datenname ist zweiter Wert.JQuery zeigt nur den ersten Wert
Hier ist mein HTML-Code:
// here's my button that to alert
function fillspan(productname) {
$("#product_detail").attr("data-name", productname);
}
//the problem
function showitems() {
var name = $("#product_detail").data("name");
alert(name);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<select onchange="fillspan(this.value)">
<option value="value1">Value1</option>
<option value="value2">Value2</option>
</select>
<span id="product_detail"></span>
<button onclick="showitems()">Click</button>
Ihre ID ist nicht das gleiche in html als der Anruf in jquery (einer von ihnen) – David
Wenn Sie ein Datenattribut festlegen, verwenden Sie 'data (" name ", productname)', nicht attr - http://stackoverflow.com/questions/9444679/jquery-data-vs-attrdata. Atrtibute aktualisiert nur das Attribut im HTML, es aktualisiert nicht den tatsächlichen Datenwert – Pete
Ich habe meine Frage aktualisiert –