javascript - 使用 jQuery 引用 html 输入元素

标签 javascript jquery html

我有以下(重复)html:

<tr>
    <td>Some text</td>
    <td><a href="#">Click me<a/></td>
    <td><form><input type="hidden" value="4"/></form></td>
</tr>

在链接的单击事件上使用 jQuery 我想检索输入元素的值。我已经尝试了各种parents(), children(), nextAll(), prev()组合,但我无法获取输入元素的值。

这是我的测试功能的链接。 jsFiddle Link

此外,我将如何检索第一个 td 元素的文本?

非常感谢您帮助我实现这一目标。
迈克尔

最佳答案

您可以使用 parenta 到达 td,然后是 next获取以下td,然后find获取 input 元素:

$("a").click(function() {
    var value = $(this).parent().next().find("input").val();
});

这是一个 updated fiddle .

要从第一个 td 获取文本,您可以采用几乎相同的方法,但使用 prev而不是 next

此外,鉴于您有多次重复的 HTML 片段,将 click 事件处理程序绑定(bind)到 DOM 树的更高层可能会更有效(也许您已经这样做了,您还没有我没有发布任何 JS,所以我不知道):

$("table").on("click", "a", function() {
    //Do stuff
});

关于javascript - 使用 jQuery 引用 html 输入元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9325114/

相关文章:

javascript - 如何在javascript中获取startdatetime和enddatetime之间的差异

javascript - 异步/等待与 Promise

javascript - 使用 JavaScript 异步代替 setInterval

javascript - jQuery 目标 next() html 项目

javascript - <ul> <li> 列表项添加onclick

javascript - 我如何添加图像的CSS过渡以在div悬停时上下滑动

javascript - 如何在横向网页的导航栏中突出显示?

jquery - jQuery.ajax 在 jQuery 源代码中的哪里定义?

asp.net-mvc - AJAX POST 之后如何在 ASP.NET MVC 2 中正确重新呈现 Recaptcha

html - 如何在框周围显示文字?