2012-04-28 3 views
2

으로 변경하십시오. 내 머리를 알아 내려고 노력했습니다. Jquery를 처음 사용하면 ... 곧 알게 될 것입니다.Jquery form - 숨겨진 값을 옵션 ID

숨겨진 입력 값을 설정하기 위해 옵션 ID를 사용하려고하지만 해결책이없는 수 시간 내에 수백 번의 Google 검색을 시도하고 있습니다.

선택기 ID를 사용하여 선택한 옵션의 값을 가져 오는 방법을 알아 냈지만 옵션 ID를 얻으려고 했으므로 숨겨진 입력 값으로 고유 ID를 설정할 수 있습니다.

<form> 
<select name="amount" id="item_number1"> 
    <option value="1" id="11">one</option> 
    <option value="2" id="22">two</option> 
    <option value="3" id="33">three</option> 
</select> 
<input type="button" value="Set Value" onclick="$('#item_number2').val($('#item_number1').val())"/> 
<input id="item_number2" type="text" /> 

시 : 내 방법이 작동하고 있는지 그래서 시각화 할 수있는 텍스트 입력 필드를 사용하고이 양식에서이 양식에 숨겨진 입력 밤은.

답변

1

당신은 다음과 같이 선택된 옵션의 ID를 얻을 수 있습니다 :

<script> 
$(function(){ 
    var sItem = document.getElementById("item_number1"); 
    $("#transfer").on("click", function(){ 
    $("#item_number2").val(sItem[sItem.selectedIndex].id); 
    }); 
}); 
</script> 
<input type="button" id="transfer" value="Transfer ID" /> 
<select name="amount" id="item_number1"> 
    <option value="1" id="11">one</option> 
    <option value="2" id="22">two</option> 
    <option value="3" id="33">three</option> 
</select> 
<input type="text" id="item_number2" /> 

주, 당신은 번호와 ID 값을 시작할 생각하지 않습니다 -이 길 아래에 당신을 위해 문제가 발생할 수 있습니다. 이와 같은 경우 규칙을 준수하는 것이 가장 좋습니다.

데모 : 당신은 업데이트 할 수 있습니다 http://jsbin.com/ucujex/edit#javascript,html,live

+0

ID의 팁 주셔서 감사합니다. 하지만이 문제를 해결하는 데 문제가 있습니다. 나는이 jquery 함수를 다른 jquery로 바꾸 었으며 아무것도 가져 오지 않는 것 같습니까? – cantaffordretail

+0

@mcflause 약간 다른 해결책을 제공했습니다. 위의 코드를 확인하십시오. 버튼에서'onclick' 속성을 제거하십시오. – Sampson

+0

조나단, 이것이 완벽합니다! 당신은 정말로 여분의 마일을 갔다. 그리고 나는 그것을 바르게 평가한다! – cantaffordretail

1

하여 버튼의 onclick에 :

$("#item_number2").val($("#item_number1 option:selected").attr("id")); 

좋은 개선 당신이 select에서 옵션을 변경하면 자동으로 (당신이 필요하지 않을 변경해야하는 것 버튼).

$("#item_number1").change(function() { 
    $("#item_number2").val($("option:selected", this).attr("id")); 
}); 
+0

감사의 말, 나는 값을 숨겨진 입력에 배치하기 위해 선택 옵션에서 변경을 구현할 것입니다. – cantaffordretail

+0

안녕하세요! 나는 이것을 행운으로 구현하려고 애 쓰고 있는데, 내가 뭘 잘못하고 있는지 볼 수 있니? http://jsbin.com/anatod/edit#javascript,html,live – cantaffordretail

+0

자바 스크립트는 HTML 뒤에 있어야합니다. '$ (document) .ready()'에 jquery 코드를 래핑하는 것도 좋은 생각이다. – dtbarne