0
 <table class="container">
 <tr>
   <td><input type="text" class="foo"></td>
 </tr>
 <tr>
   <td><input type="text" class="foo"></td>
 </tr>
 <tr>
   <td><input type="text" class="foo"></td>
 </tr>
 </table>


 <script>
 $(".container tr").click(function(){
     alert($(this).find("foo").val());
 });
 </script>

它应该做什么:
当我点击表格行时,它会在这个元素内找到输入并提醒它的值。

谢谢你!

4

4 回答 4

1

你错过了.你的类选择器内部:

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

小提琴:http : //jsfiddle.net/wUgt5/

于 2012-10-20T09:21:57.000 回答
1

$(this).find(".foo")将返回多个项目,即该类有 3 个元素。注意添加.以表示它是一个类名

$(".container tr").click(function(){
     $(this).find(".foo").each(function(){
          alert($(this).val());

      });
 });

$(this).find("foo")会尝试找到带有“foo”标签的元素,例如<foo></foo>

于 2012-10-20T09:22:49.620 回答
0

应该是.find(".foo")选择类而不是标签

于 2012-10-20T09:20:46.910 回答
0

请进行以下更改,您将 100% 获得解决方案。

Change the jquery as below,

function getvalue(elementid) {

var elementid = "#" + elementid;
alert($(elementid).val());
}

and change your HTML as below,`enter code here`

as shown here you need  to call jquery function on click event of each textbox and     also need to give an id to each text box.
<table class="container">
<tr>
<td>
<input type="text" id="txtval1" class="foo" onclick="javascript:test(this.id);"></td>
</tr>
<tr>
<td>
<input type="text" id="txtval2" class="foo" onclick="javascript:test(this.id);"></td>
</tr>
<tr>
<td>
<input type="text" id="txtval3" class="foo" onclick="javascript:test(this.id);"></td>
</tr>
</table>
于 2012-10-20T11:47:26.567 回答