如何在Jquery中使用formid获取表单内的表对象?

时间:2016-12-11 14:15:45

标签: javascript jquery forms

我有一个如下表格

 form name="myform" id="myform">
      <table>
          <tr role="row" class="odd selected">
          <td class="ng-scope sorting_1">1</td>
          <td class="ng-scope">.NET</td>
          <td class="ng-scope">Intermediate</td>
          <td class="ng-scope">0</td><td class="ng-scope">true</td>
</tr>
      </table>

    </form>

使用表单id无论如何都要在这个表单中获取表对象? 我尝试了下面的方式,这样我可以获得表单内的所有输入,但我无法得到表对象

$("form#myform:input").each(function(){
 var input = $(this); 
});

任何人都可以提出一种方法来做同样的事情。

3 个答案:

答案 0 :(得分:2)

我不确定您要对该表做什么,但您可以使用以下选择器访问它:

var yourTable = $("#myform table");

选择器正在查找ID为table的元素内的myform元素。

如果你想获得行选择器(正如你在评论中提到的那样),那么你可以使用tr的添加选择器:

$("#myform table tr").each(function(){
   var currentRow = $(this); 
   // do what you need with current row
});

答案 1 :(得分:1)

这个怎么样:

$("form#myform>table").each(function(){
 var table = $(this); 
});

您使用“&gt;”访问直接后代,这是一个表。

修改

$("form#myform>table>tr").each(function(){
 var trInner = $(this).html(); 
});

答案 2 :(得分:1)

我认为这就是你想要的

HTML

<form id="myform">
 <table>
   <tr role="row" class="odd selected">
      <td class="ng-scope sorting_1">1</td>
      <td class="ng-scope">.NET</td>
      <td class="ng-scope">Intermediate</td>
       <td class="ng-scope">0</td><td class="ng-scope">true</td>
  </tr>

  </table>
 </form>
 <table class="dest-table">
    <tr role="row" class="odd selected">
      <td class="ng-scope sorting_1">1</td>
      <td class="ng-scope">a</td>
      <td class="ng-scope">b</td>
      <td class="ng-scope">c<td class="ng-scope">d</td>
  </tr>
</table>

JS

$(document).ready(function() {

   $("#myform tr").on("click", function(event) {
         $(".dest-table tr").html($(event.currentTarget).html());
   }) 

})

小提琴

https://jsfiddle.net/ja454mfx/1/