0

如何在 JavaScript 函数(jQuery)中访问“StudentID”值。

HTML:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<Student.Models.vwStudent>>" %>

    <div class="divClass" id="divID">
      <table class="tableClass" id="tableID">
      <% foreach (var item in Model) { %>
        <tr class="trClass" id="trID">
          <td class="tdClass">
            <%= Html.TextBox("StudentID") %>
          </td>
          <td class="tdClass">
            <%= Html.Encode(item.StudentName) %>
          </td>
        </tr>
      <% } %>
      </table>
    </div>

查询:

 $('#ShowStudentID').click(function () {        
      $(".tdClass").each(function () {
          alert($('.tdClass').children().val());
       // How do I access StudentID and StudentName here?
      });
 });
4

3 回答 3

1

可以直接访问中编码的html,td with id=tdID不需要每个

 $('#ShowStudentID').click(function () {                
       alert($('#tdID').text());                   
 });
于 2012-07-20T22:51:37.090 回答
1

如果您想获取每个 td 的值,这似乎是您想要做的,您可以this在每个循环中使用关键字。像这样的东西:

$('#ShowStudentID').click(function () { 
    $(".tdClass").each(function () { 
        alert($(this).text()); 
    }); 
 });

编辑:

要获取 td 元素中输入的值,您可以在每个循环中执行此操作:

alert($(this).find("input").val());

为了使它更具体一点,您也可以输入属性等于选择器

alert($(this).find("input[name='StudentID']").val());

编辑2:

要从这两个td元素中获取信息,您可以改为执行以下操作:

$('#ShowStudentID').click(function () {
    $(".trClass").each(function () { 
          var tds = $(".tdClass", this);
          alert(tds.eq(0).find("input").val());
          alert(tds.eq(1).text());         
    });
});

相反,您循环遍历tr元素,选择其中的每个元素td并单独处理它们。

这也是一个工作示例:http: //jsfiddle.net/Hzfz2/

于 2012-07-20T23:00:00.703 回答
1

要访问该StudentID值:

$('#ShowStudentID').click(function () {
    $(".tdClass").each(function () {
        alert($(this).text());
    });
});

顺便说一句,我不会使用相同的 ID (trIDtdID),因为id属性必须是唯一的。

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<Student.Models.vwStudent>>" %>

    <div class="divClass" id="divID">
      <table class="tableClass" id="tableID">
      <% foreach (var item in Model) { %>
        <tr class="trClass">
          <td class="tdClass">
            <%= Html.Encode(item.StudentID) %>
          </td>
        </tr>
      <% } %>
      </table>
    </div>
于 2012-07-20T23:00:07.700 回答