배경 - 텍스트 필드가있는 양식이 있습니다. 사용자는 2-6 자리 정수를 입력합니다. 각 키 스트로크에서 javascript 함수는 드롭 다운에서 일치하는 값을 호출합니다. onKeyUp 함수가 모든 결과를 반환하지 않습니다.
내 텍스트 필드 :<input type="text" name="orgSICCode" value="" allownull="FALSE" size="5" maxlength="10" datatype="dtNumeric" onKeyUp="ActivateOption(description,this.value);" onBlur="this.value = description.options[description.selectedIndex].value;" emsg="Must choose a SIC Code before you can continue.">
내 드롭 다운 필드 :
<select name="description" STYLE="width:275px;" onChange="orgSICCode.value = this.options[this.selectedIndex].value;sic_code_description.value = this.options[this.selectedIndex].text;">
<option value="">Select One ...</option>
<option value="085101">085101 - Forest management services</option>
<option value="0831">0831 - Forest Products</option>
<option value="083100">083100 - Forest products</option>
<option value="083199">083199 - Forest products, nec</option>
<option value="08">08 - Forestry</option>
</select>
내 자바 스크립트 함수의 ActivateOption :
function ActivateOption(selectObj, strValue) {
for(var idx=0;idx<selectObj.options.length;idx++) {
if(selectObj.options[idx].value.substring(0,strValue.length) == strValue) {
selectObj.selectedIndex = idx;
return true;
}
}
selectObj.selectedIndex = 0;
return false;
}
때 사용자 유형 '08', 첫 번째 옵션이 08 값인 "08 - 임업"옵션입니다. 채우는 옵션은 '085101', '085101 - 산림 관리 서비스'입니다.
내가 잘못 했나요?
감사합니다.
감사를 확인하기 위해 더 나은 필터를 사용하지만이 작동하지 않는 것 같습니다. 그것은 현재의 함수에 비슷한 결과를 반환합니다. – etm124
나의 if 조건의 첫 번째 부분은 FIRST가 아니라 'strValue'의 값과 일치하는 것 같습니다. – etm124