Ich habe ein Problem mit einem Element mit jquery. Ich baue den Namen in einem var wie:Jquery - Erhalte Element durch ID und konstruiere die ID in String
var myId = "#" + myGotId;
$(myId).attr("title", "changed");
$ (myId) wird leer zurückgegeben. Ich möchte mein Element durch ID erhalten, aber meine Id dynamisch verbindende Zeichenfolgen konstruieren.
bearbeitet von @Pointy — zusätzlichen Code in einem Kommentar vom OP geliefert:
var form = $('form#formDefaultValue');
$(':submit', form).click(function(event) {
event.preventDefault();
$.post(form.attr('action'), form.serialize(), function(data, status, XMLHttpRequest) {
if (status == 'success') {
$("#msgInformation").html("Your changes have been successfully saved.");
jQuery("#spanDefaultValue").attr("class", "db");
var g = indexNodeSelected;
g = g.replace("\\", "\\\\\\\\");
$('#'+ g).find("span").attr("class", "");
}
sollte es. Überprüfen Sie, ob myId den erwarteten Wert hat. – Quentin
Was ist der Wert von 'myGotId'? Bist du sicher, dass du nicht "#" + "myGotId" 'meinst? Wenn ein Element mit dieser ID nicht existiert, hilft Ihnen weder das dynamische Verknüpfen von Strings noch etwas anderes. – darioo
David ist korrekt, überprüfen Sie den Wert für 'myGotId', um sicherzustellen, dass 'myId' auf den entsprechenden Wert gesetzt wird. Hier ist ein Arbeitsbeispiel mit Ihrem Code. http://www.jsfiddle.net/subhaze/kjpNN/ – subhaze