2016-08-31 1 views
0

Ich habe ein Array und möchte das letzte Symbol, das '0' ist, entfernen. Deshalb benutze ich substring, um es zu entfernen, und ich versuche, diese Variable als jQuery-Selektor zu verwenden. Aber es wählt das Element nicht aus, wenn ich Teilzeichenfolge verwendet habe.Auswählen eines Elements mit einer Variablen, die mit einem Teilstring erstellt wurde

Mein Code ist:


 
var key = 'director_front_passport0'; 
 
    
 
var document_name = key.substring(0,key.length - 1); 
 
console.log(document_name); //returns director_front_passport 
 

 
$('#' + document_name).append('<label class="error file_error">test</label>'); 
 
//I want to select element with id=director_front_passport 
 

 
    
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="file" name="director_front_passport" id="director_front_passport" />

Wie soll ich Elemente mit bestimmten ID wählen, wenn ich substring verwendet habe?

+1

Warum nicht erstellen Schnipsel mit tatsächlichen Elemente genannt, wie Sie erwarten: Sie können nicht in ein Eingabefeld

Versuchen after anhängen? Dann können wir testen, ob Ihre Logik funktioniert – mplungjan

+0

Ich werde Code bearbeiten, so dass Sie es mit Daten testen sollten. –

+0

Können Sie uns auch zeigen, wie Ihre HTML-Elemente aussehen? – Adjit

Antwort

1

Ihr Code funktioniert, wenn Sie an ein Div.

var response = { 
 
    errors: { 
 
    'director_front_passport0': "error1", 
 
    'director_back_passport0': "error2", 
 
    'director_address_document0': "error3" 
 
    } 
 
} 
 

 
$.each(response.errors, function(key, value) { 
 

 
    var files_array = ['director_front_passport0', 
 
        'director_back_passport0', 
 
        'director_address_document0']; 
 
    if ($.inArray(key, files_array) !== -1) { 
 

 
    var document_name = key.substring(0, key.length - 1); 
 
    console.log(document_name); //returns for example director_front_passport 
 

 
    $('#' + document_name).after('<label class="error file_error">test</label>'); 
 
    //I want to select element with id=director_front_passport 
 

 
    } 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 

 
<input type="file" id="director_front_passport" /><hr/> 
 
<input type="file" id="director_back_passport" /><hr/> 
 
<input type="file" id="director_address_document" />

+0

Wenn ich Input-Element habe, wie soll ich Eltern-Div auswählen - ist es nicht auf diese Weise -> $ ('#' + Dokumentenname) .parents ('div'). Append (' '); –

+1

Bitte siehe Update – mplungjan

+0

Ja, es funktioniert, vielen Dank! –

Verwandte Themen