jQuery无法选择嵌套在表中的表单输入

时间:2012-07-09 11:57:11

标签: html forms html-table jquery-selectors

我有一个带输入元素的html表单。每次我把那个表单放在table标签里面 <table><form></form></table>,jQuery选择器无法选择表单内的输入。

这是代码:

<script type="text/javascript">
  $(document).ready(function(){
    $("#myForm #textinput1").val("hahaha");
  });   
</script>
<table>
<form name="myForm" id="myForm">
<input type="text" name="textinput1" id="textinput1" />
</form>
</table>

但是以下工作:

<form name="myForm" id="myForm">
<table><input type="text" name="textinput1" id="textinput1" /></table>
</form>

以下也有效:

<script type="text/javascript">
    $(document).ready(function(){
        $("#textinput1").val("hahaha");
    }); 
</script>
<table>
    <form name="myForm" id="myForm">
    <input type="text" name="textinput1" id="textinput1" />
    </form>
</table>

3 个答案:

答案 0 :(得分:3)

首先,table不能直接包含form

您可以在表格中嵌套表格。

<form>
  <table>
    <tr> <td> My Content </td> </tr>
  <table>
</form>

<table>
    <tr> 
       <td> 
          <form>My Content </form>
       </td> 
    </tr>
 <table>

答案 1 :(得分:0)

试试这个

  document.getElementById("textinput1").value;

答案 2 :(得分:0)

<script type="text/javascript">
$(document).ready(function(){
    $("#textinput1").val("hahaha");
}); 

<table>
<form name="myForm" id="myForm">
<input type="text" name="textinput1" id="textinput1" />
</form>

在上面的代码中,您正在使用其id直接选择input元素。如果您尝试选择

$("form#myform #textinput1").val("hahaha");
你不能。直到你的桌子里面有表格。