我有将用于发布信息来使用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...
    });

除,我不能为我的生命找出如何从内连杆提取隐藏的输入字段的值。

我在做什么错误? 更重要的是,这是甚至为动态列表做一个聪明的办法?

有帮助吗?

解决方案

不知道是否隐藏的输入是有效的锚定(W3C)...从未尝试过。

是否follwoing工作

var itemID = $(this).children().eq(0).val();
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top