【发布时间】:2011-02-20 17:31:12
【问题描述】:
我有一个表单,用户可以在其中输入链接,单击“添加链接”按钮,然后(通过 jQuery)将该链接作为隐藏字段添加到表单中。问题是我提交表单时它没有发布。它真的开始让我感到困惑。问题是,如果我将隐藏字段硬编码到表单中,它会被发布,但我的功能由于某种原因无法正常工作。正如我在 Firebug 中看到的那样,隐藏字段确实已添加到我的表单中,但它只是没有与 POST 数据一起发送。
请注意,我在 Javascript 中使用了一个数组来保存元素,直到提交表单,这也会将它们以可见的形式发布给用户以查看他们添加的内容。我在元素的“名称”字段上使用 [] 表示法,因为我希望将链接提供给 PHP 中的数组。
这里是附加到我的表单的链接创建:
function make_hidden_element_tag(item_type, item_content, item_id)
{
return '<input type="hidden" name="' + item_type + '[]" id="hidden_link_' + item_id + '" value="' + item_content + '"/>';
有没有人知道为什么这可能不会发布。如上所述,任何与上述几乎相同的硬编码标签都可以正常工作,只是这个标签不起作用。以下是我使用 jQUery 将标签添加到表单的方法:
$('#link_td').append( make_hidden_element_tag('links', link, link_array.length - 1));
我正在使用 Kohana 3 框架,但我不确定这是否与此有关,因为从将 HTML 添加到页面并按下提交按钮的那一刻起,它并没有真正做任何事情。
【问题讨论】:
标签: javascript jquery html forms