2015-09-13 235 views
1

我试图避免人员重复选择为同一房间号码,并填充标签与选定的person.PLease看到的jsfiddle的问题验证在GridView中选择下拉值和选择价值

http://jsfiddle.net/bharatgillala/9o1gxa1h/4/

填充标签

HTML

<table id="gridviewInfo" runatr="server"> 


<TBODY><TR> 
<TH scope=col>Available Person</TH> 
<TH scope=col>RooNumber</TH> 
<TH scope=col>SelectedPerson</TH> 

</TR> 

<TR> 
<TD style="WHITE-SPACE: nowrap" align=left><SELECT onchange=checkforvalue(this) id=ddlAvailableJudges name=ctl00$contentBody$gvwRoomInformation$ctl02$ddlAvailableJudges> 

<OPTION selected value=> 
</OPTION> 
<OPTION value=maxico>maxico 
    </OPTION> <OPTION value=chennai>chennai</OPTION> <OPTION value=newdelhi>newdelhi</OPTION> <OPTION value=hongkong>hongkong</OPTION> </SELECT> </TD> 
<TD style="WIDTH: 100px">1</TD> 
<td> 
<label > populate </label> 
</td>  
</TR> 

<TR> 
    <TD style="WHITE-SPACE: nowrap" align=left> 

    <SELECT onchange=checkforvalue(this) id=ddlAvailableJudges name=ctl00$contentBody$gvwRoomInformation$ctl03$ddlAvailableJudges> 

    <OPTION selected value=> 
    </OPTION> 
    <OPTION value=maxico>maxico</OPTION> <OPTION value=chennai>chennai</OPTION> <OPTION value=newdelhi>newdelhi</OPTION> <OPTION value=hongkong>hongkong</OPTION></SELECT> </TD> 
<TD style="WIDTH: 100px">2</TD> 

    <td> 
    <label > populate </label> 
    </td> 
    </tr> 

回答

1

你不能在下拉列表中选择相同的标识(ID应该是独一无二的)。这是代码。我已将类名添加到下拉列表中,并为每个下拉列表提供了唯一的ID。

这里是一个link to the updated fiddle

$('.judges').change(function(){ 
    //on change get selected dropdown's value 
    var curVal = $('option:selected',this).val(); 
    //get the id of the dropdown changed 
    var curId = this.id; 
    //set the label with selected value 
    $(this).parents().eq(1).find('td:nth-child(3) > label').html(this.value); 
    //loop through all the dropdowns 
    $('.judges').each(function() { 
     //for each dropdown get the selected value 
     var innerVal = $('option:selected',this).val(); 
     if(innerVal !== ''){ 
      //if id of the dropdown is different to that of the original dropdown selected & the selected values are the same clear the selection of the old dropdown 
      if(innerVal === curVal && curId != this.id){ 
       $(this).val(" "); 
       $(this).parents().eq(1).find('td:nth-child(3) > label').html('populate from selected'); 
      } 
     } 
     else { 
      $(this).parents().eq(1).find('td:nth-child(3) > label').html('populate from selected'); 
     } 
    }); 
}); 
+0

感谢普拉香特 – user2465036