2012-01-25 3 views
0

이 함수에서 드롭 다운 및 텍스트 상자로 설정된 JavaScript 함수가 하나 있습니다.이 함수를 jQuery로 친절하게 변환하려고합니다. 때문에 return falsejavascript 함수를 jquery로 변환합니다.

function setDDls(strCity, strState, strCountry) { 
    $(txtCity).val(strCity); 
    $(ddlState).val(strState); 
    $(ddlCountry).val(strCountry); 
    $("#overlay .close").click(); 
    return false; 

    txtCitySearch = document.getElementById("<%= txtCity.ClientID %>"); 
    ddlStateSearch = document.getElementById("<%= ddlState.ClientID %>"); 
    ddlCountrySearch = document.getElementById("<%= ddlCountry.ClientID %>"); 
    txtCitySearch.value = strCity; 

    ddlStateSearch.selectedIndex = 0 

    for (i = 0; i < ddlStateSearch.options.length; i++) { 

     if (ddlState.options(i).text.toUpperCase() == strState.toString().toUpperCase()) { 
      ddlStateSearch.selectedIndex = i; 
      break; 
     } 
    } 

    ddlCountrySearch.selectedIndex = 0; 
    for (i = 0; i < ddlCountrySearch.options.length; i++) { 
     if (ddlCountrySearch.options(i).text.toUpperCase() == strCountry.toString().toUpperCase()) { 
      ddlCountrySearch.selectedIndex = i; 
      break; 
     } 
    } 
    $("#overlay .close").click(); 
    return false; 
} 

답변

1

, 당신의 기능은

function setDDls(strCity, strState, strCountry) { 
     $(txtCity).val(strCity); 
     $(ddlState).val(strState); 
     $(ddlCountry).val(strCountry); 
     $("#overlay .close").click(); 
     return false; 
} 
0

그냥 동일 나는 함수의 시작 부분에 표시되는 비트가 할 jQuery를 사용하는 현재의 시도 가정 무엇 하반기 당신의 기능은 무엇입니까? 그렇다면 주된 문제는 jQuery 선택기를 설정하지 않았다는 것입니다. 이 시도 :

function setDDls(strCity, strState, strCountry) { 
    $("#<%= txtCity.ClientID %>").val(strCity); 
    $("#<%= ddlState.ClientID %>").val(strState); 
    $("#<%= ddlCountry.ClientID %>").val(strCountry); 
    $("#overlay .close").click(); 
    return false; 
} 

어디 jQuery를에, CSS에서, 당신은 id로 선택하여 ID를 앞에 붙여 "#"같은

$("#<%= txtCity.ClientID %>") 

있다는 것은

document.getElementById("<%= txtCity.ClientID %>") 

에 해당합니다. .. jQuery 버전은 일치 여부에 관계없이 (.length을 확인하여 일치하는 항목을 테스트 할 수 있음) 관계없이 jQuery 객체를 반환하는 반면, .getElementById()은 실제 일치하지 않으면 DOM 객체 또는 null.

다른 문제가 발생했다면 질문에 철자를 적어 두는 것이 좋습니다.

+0

덕분에 지금은 (i = 0; i

관련 문제