javascript - Trying to get value from textbox in column in table - Stack Overflow

I dynamically created a table with three columns.<tr><td>1<td><td>SegName<

I dynamically created a table with three columns.

<tr>
  <td>1</td>
  <td>SegName</td>
  <td><input type='text' /></td>
</tr>

I'm trying to write a function that goes through each row and grabs the value in that will be in the textbox.

Javascript:

$("#codeSegmentBody").children().eq(x).children().eq(2).val();

The code brings brings up undefined when I do val(), but if I do html it'll grab the html of the textbox.

How can I get this to bring me the value?

I dynamically created a table with three columns.

<tr>
  <td>1</td>
  <td>SegName</td>
  <td><input type='text' /></td>
</tr>

I'm trying to write a function that goes through each row and grabs the value in that will be in the textbox.

Javascript:

$("#codeSegmentBody").children().eq(x).children().eq(2).val();

The code brings brings up undefined when I do val(), but if I do html it'll grab the html of the textbox.

How can I get this to bring me the value?

Share Improve this question asked Jan 13, 2012 at 16:44 dotNet ZombiedotNet Zombie 1342 silver badges10 bronze badges
Add a ment  | 

7 Answers 7

Reset to default 3
<table id="test">
    <tr>
        <td>
            <input type="text" value="123">
        </td>
    </tr>
    <tr>
        <td>
            <input type="text" value="abc">
        </td>
    </tr>
</table>

<script type="text/javascript">
$(document).ready(function(){

    $("#test").find(":input[type=text]").each(function(){

        alert( $(this).val() );

    }); 

});
</script>

Here is a fiddle that will get you there:

http://jsfiddle/uS8AK/

Assuming #codeSegmentBody is the name of your table, try this:

$("#codeSegmentBody td input").each(function() {
    var inputValue = $(this).val();
    alert(inputValue);
});

Example fiddle

$("#codeSegmentBody tr input[type='text']").each(function(){
    alert($(this).val());
})

Try this

$("#codeSegmentBody tr").each(function() {
    alert($(this).find("input").val());
});

You are referencing the containing <td> not the input. Try:

$("#codeSegmentBody").children().eq(x).find(":text").val();
var str = "";
$("#codeSegmentBody .third-column input").each(function()
{
  str += this.value;
});
alert(str);

Not easier

$("table tr td input").val();

?

BTW. You don't have any value in this input anyway.

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1744617466a4584138.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信