2016-11-17 13 views
3

반환이, 소품은 ('ID') 방법 대신 문자열로 ID의 입력 요소를 반환 소품 HTMLjQuerys는() 나는 양식에서 이름 = "ID"와 입력을했습니다 때 방법은 잘못된 ID

<form id="testform"> 
    <input name="id"> 
</form> 

JS

var $form = $('#testform'); 

var wrongId = $form.prop('id'); 
var correctId = $form.attr('id'); 

alert(wrongId); // alerts the html input element 
alert(correctId); // alerts the id testform 

는 사람이 나에게 이것을 설명 할 수 있습니까?

나는 바이올린 준비했습니다 :이 입력 id 이름을했기 때문에, 그리고 https://jsfiddle.net/zosu17se/

감사와 최고의

답변

5

을 입력, 선택 및 기타 "폼 요소"의 이름이나 ID 부모 폼에 쉽게 액세스 할 수 있도록 폼의 속성으로 연결되므로 form.id은 입력이고 요소 id는 아닙니다.

id 또는 액세스하려는 다른 속성 이름을 지정하면 문제가 해결됩니다. 이

var form = window.test; // note that element ID's are also attached to the global scope 
 

 
form.id.value = 'test'; 
 
form.value.value = 'test more'; 
 
form.selectedIndex.value = '2';
<form id="test"> 
 
    <input name="id"> 
 
    <input name="value"> 
 
    
 
    <select id="selectedIndex"> 
 
    <option value="1">1</option> 
 
    <option value="2">2</option> 
 
    <option value="3">3</option> 
 
    </select> 
 
</form>

+0

또는 다른 속성 이름에 의한 이상한 코드의

예, 예 : https://jsfiddle.net/zosu17se/9/ –