2016-08-31 6 views
0

배열이 있는데 마지막 기호 인 '0'을 제거하려고합니다. 그래서 하위 문자열을 사용하여 제거하고이 변수를 jQuery 선택기로 사용하려고합니다. 그러나 하위 문자열을 사용했을 때 요소를 선택하지 않습니다.하위 문자열을 사용하여 만든 변수가있는 요소 선택

내 코드입니다 : 내가 substring를 사용 한 경우


 
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" />

가 어떻게 명확한 ID를 가진 요소를 선택해야 하는가?

+1

왜 예상대로라는 이름의 실제 요소와 코드 조각을 만들 수 없습니다 : 당신은 after을 시도 입력 필드

에 추가 할 수 없습니다? 그런 다음 논리가 작동하는지 테스트 할 수 있습니다. – mplungjan

+0

코드를 편집하여 데이터로 테스트해야합니다. –

+0

또한 HTML 요소가 어떻게 보이는지 보여 줄 수 있습니까? – Adjit

답변

1

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

입력 요소가있는 경우 부모 div를 선택하는 방법 -이 방법으로 -> $ ('#'+ document_name) .parents ('div'). append (' '); –

+1

업데이트 – mplungjan

+0

을 확인하십시오. 예, 작동 중입니다. 대단히 감사합니다! –