2015-07-20 98 views
0
<input id="CHAMPARAN EAST" 
     name="CHAMPARAN EAST" 
     onclick="SearchDistict('CHAMPARAN EAST');" type="checkbox" value="34"> 

我的功能功能jQuery中不起作用

function SearchDistict(obj) { 
    debugger; 
    if (obj.checked) { 
     districtCollection.push(obj.value); 
    } else { 
     districtCollection.pop(obj.value); 
     //districtCollection.splice($.inArray(obj.value, districtCollection),1); 

    } 
    var postData = preparingSearch(); 
    debugger; 
    postData.StateList = ''; 
    postData.DistrictList = districtCollection; 
    SearchEngine(); 
    //CallSearchBorrower(postData); 
} 

當我們調用SearchDistict( 'CHAMPARAN東方')的工作,但它不能調用if語句

+0

只檢查else條件 –

回答

1

不是傳遞的ID複選框通過this對象如下所示。 this對象將具有複選框的所有狀態,但僅傳遞id值不會解決您的目的。

function SearchDistict(obj) 
 
{ 
 
     alert(obj.checked); 
 
     if (obj.checked) 
 
     { 
 
      districtCollection.push(obj.value); 
 
     } 
 
     else { 
 
      districtCollection.pop(obj.value); 
 
      //districtCollection.splice($.inArray(obj.value, districtCollection),1); 
 

 
     } 
 
     var postData = preparingSearch(); 
 
     debugger; 
 
     postData.StateList = ''; 
 
     postData.DistrictList = districtCollection; 
 
     SearchEngine(); 
 
     //CallSearchBorrower(postData); 
 
    }
<input id="CHAMPARAN EAST" 
 
      name="CHAMPARAN EAST" 
 
      onclick="SearchDistict(this);" type="checkbox" value="34">

上面的代碼將會給你內部功能的obj.checked

0

obj是一個字符串,而不是複選框,因此它不具有checked屬性,而不是你可以在行事件處理程序中使用this關鍵字傳遞對象引用本身。

<input id="CHAMPARAN EAST" name="CHAMPARAN EAST" onclick="SearchDistict(this);" type="checkbox" value="34"> 

然後

function SearchDistict(obj) { 
    debugger; 
    if (obj.checked) { 
     districtCollection.push(obj.value); 
    } else { 
     districtCollection.pop(obj.value); 
     //districtCollection.splice($.inArray(obj.value, districtCollection),1); 

    } 
    var postData = preparingSearch(); 
    debugger; 
    postData.StateList = ''; 
    postData.DistrictList = districtCollection; 
    SearchEngine(); 
    //CallSearchBorrower(postData); 
}