如何使用javascript从转发器获取所选标签的值

时间:2016-10-12 08:40:52

标签: javascript c# jquery asp.net .net

我绑定了转发器,我想在检查特定复选框时获取标签的值:



$(function() {
  $('.toggleCheck').change(function() {
    console.log('Toggle: ' + $(this).prop('checked'))

    RepeaterData();
  })
})


function RepeaterData() {
  var size = $('.nameLabel').length;
  console.log('size' + size);
  for (i = 0; i < size; i++) {
    var name = $('.nameLabel').eq(i).text();
    var id = $('.IdLabel').eq(i).text();
    //var result = document.getElementById('result');
    alert(name);
    // result.innerText += name + "  \t " + id + "\n";
  }
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<asp:Repeater ID="rptCust" runat="server">
  <HeaderTemplate>
    <div class="table-responsive">
      <table class="table table-striped table-bordered table-hover table-highlight" data-provide="datatable" data-display-rows="10" data-info="true" data-search="true" data-length-change="true" data-paginate="true">
        <thead>
          <tr>
            <th data-filterable="true">No</th>
            <th>name</th>
            <th>Action</th>
          </tr>
        </thead>
        <tbody>
  </HeaderTemplate>
  <ItemTemplate>
    <tr>
      <td>
        <asp:Label ID="lblId" CssClass="IdLabel" runat="server" Text='<%#Eval("id")%>' Style="display: none"></asp:Label>
        <asp:Label ID="lblno" CssClass="nameLabel" runat="server" Text='<%#Eval("no")%>'></asp:Label>
      </td>
      <td>
        <asp:Label ID="lblname" runat="server" Text='<%#Eval("name")%>'></asp:Label>
      </td>
      <td>
        <input id="Checkbox1" commandname="Edit" data-toggle="toggle" type="checkbox" checked='<%# (Eval("status")).ToString() == "1" ? true : false %>' runat="server" class="toggleCheck">
      </td>
    </tr>
  </ItemTemplate>
  <FooterTemplate>
    </tbody>
    </table>
    </div>
  </FooterTemplate>
</asp:Repeater>
&#13;
&#13;
&#13;

我已经写了上面的代码。

现在当我点击复选框时,我需要使用javascript获取该复选框的ID。

我试图获取该值但它在复选框选中/取消选中时为我提供了所有值而不是特定ID。

当我选中/取消选中复选框时,如何获得特定ID的值?

2 个答案:

答案 0 :(得分:0)

你可以这样做......

 $('.toggleCheck').click(function(){
    console.log($(this).attr('id'));
 })

或者如果你想确定是否有人...

 $('.toggleCheck').click(function(){
    if($(this).is(':checked')){
      console.log($(this).attr('id'));
    }
 })

答案 1 :(得分:0)

我已经解决了。以下是代码。

我添加了var id = $(this).closest('tr').find('td:first-child').text(); 使用上面的行,我可以在复选框选中/取消选中

时获得特定ID
   $(function() {
      $('.toggleCheck').change(function() {
        console.log('Toggle: ' + $(this).prop('checked'))
        var id = $(this).closest('tr').find('td:first-child').text();

      })
    })