저는 자바 스크립트에 익숙하지 않으며 입력 유형에 따라 다른 이벤트가 발생하도록 노력하고 있습니다. 나는 내 HTML 헤더에 다음과 같은 한 :자바 스크립트로 리디렉션하려고합니다.
<select name="destination">
<option value="current_builds">Current Builds</option>
<option value="deprecated">Deprecated Files</option>
<option value="mailing_list">Mailing List</option>
</select><br/>
<input type="button" value="next >" onClick="validateForm()" />
이 있지만하지 않는 것을 :
<script type="text/javascript">
function validateForm(){
var val=document.getElementsByName("destination");
if (val == "deprecated"){
window.location="http://website.com/";
}
}
</script>
그런 다음 몸에, 나는 다음과 같은 수 있습니다. 그것은 단지 같은 페이지에 머물러 있습니다.
<form name="my_form" onSubmit="validateForm()">
...
</form>
를 다음 일치 자바 스크립트를 갖는 : 나는 또한 말하여 양식 태그 내부에 그것을 포장 시도
var val = document.forms["my_form"]["destination"].value
을하지만이 중 하나가 작동하지 않았다.
누구든지 문제가 무엇인지 확인하십시오. 감사합니다. .
미래에 대해 알고 싶다면 조금 설명해 주시겠습니까? val [1] 또는 무엇인가와 비교하여 val [0]을 선택하는 것을 어떻게 아시나요? val [1]이 선택 될 때가있을 것인가? 그리고 이것이 일어날 수있는 예를 나에게 줄 수 있겠는가? 또한 .selectedIndex 부분이 필요한 이유는 무엇입니까? – de1337ed
'getElementsByName ("destination")'메소드는 "destination"과 같은 이름을 가진 모든 엘리먼트에 접근한다. 발견 된 모든 엘리먼트의 배열을 리턴한다. 여기서 val [0]은 첫 번째 요소이며, val [1]은 html에있는 두 번째 요소 (있는 경우)입니다 ... selectedIndex는 드롭 다운 목록에서 선택한 옵션의 인덱스를 설정하거나 반환합니다. http://www.w3schools.com/jsref/dom_obj_select.asp 및 http://www.w3schools.com/jsref/met_doc_getelementsbyname.asp – mabbas
의 이름은 'getElementsByName'이며,'Elements '는 복수형 의미입니다. 그 이름을 가진 둘 이상의 요소가 될 수 있으므로 배열 형식의 콜렉션이 리턴됩니다. 반면에 'getElementById'는 단수입니다. 하나의 요소가 반환 될 것으로 예상됩니다. – codingbiz