0

我有一个动态的项目列表,这些项目将用于使用 AJAX 将信息发布到后端。

<a href="...">Item 1</a>
<a href="...">Item 2</a>
<a href="...">.....</a>
<a href="...">Item n</a>

我决定在每个项目上包含一个 css 类和一个隐藏输入,以便我可以轻松地分配处理程序(使用 css 类),并且我可以知道项目的 ID(使用隐藏字段)。

<a href="..." class="recorditem"><input type="hidden" value="1" name="ItemID"/>Item 1</a>
<a href="..." class="recorditem"><input type="hidden" value="2" name="ItemID"/>Item 2</a>
...
<a href="..." class="recorditem"><input type="hidden" value="n" name="ItemID"/>Item n</a>

然后使用 jQuery,我将拦截对链接的点击(该链接将转到非 javascript 用户的页面)以进行 POST。所以它看起来像这样:

 $("a.recorditem").click(function(){
        //get the item ID
        var itemID = $(this + " :input[name='ItemID']").val(); <-- PROBLEM

        //build a form dynamically - omitted for readability
        var formToAdd = "<input type='text'.... "
        //etc etc...
    });

除了,我一生都无法弄清楚如何从其中的链接中提取隐藏输入字段的值。

我做错了什么? 更好的是,对于动态列表,这甚至是一种聪明的方法吗?

4

1 回答 1

2

不确定隐藏的输入在锚(W3c)中是否有效......从未尝试过。

以下工作是否有效

var itemID = $(this).children().eq(0).val();
于 2009-09-02T20:06:20.987 回答