jQuery val返回空字符串

时间:2012-02-14 16:59:57

标签: jquery html

我的应用程序中有以下html代码:

<tr style="cursor:pointer;">
    <td>100101</td>
    <td>Monkey</td>
    <td>Nuts<td>
    <td>Cow</td>
    <td>Soup</td>
    <td>Chicken</td>
    <td>Leg</td>
    <td class="non-clicky">
        <p>Click</p>
    </td>
</tr>

当我点击课堂非点击时,我需要做的是获取第一个td的值。 所以我有代码:

alert($('.non-clicky:first').parent().children('td:first').val());

此代码导致值“” - 返回空字符串而不是结果100101。

所以,我尝试了代码:

alert($('.non-clicky:first').siblings(':first').val());

这又导致值为空字符串,为什么.val()返回空字符串而不是正确的结果?

我尝试了下面的代码,这给了我正确的答案,但我很好奇为什么val没有。 val和text之间有什么区别?

alert($('.non-clicky:first').siblings(':first').text());
// and 
alert($('.non-clicky:first').parent().children('td:first').text());

注意:

上面的代码使用$('.non-clicky:first')这只是为了我在代码中的测试目的,它将在jquery点击事件中。

2 个答案:

答案 0 :(得分:4)

使用.text().val()用于获取输入元素的值。

答案 1 :(得分:0)

使用text()

$('.non-clicky').click(function(){ alert($(this).siblings().first().text()); });