【问题标题】:Accessing information outside an HTML form访问 HTML 表单之外的信息
【发布时间】:2011-09-09 15:50:00
【问题描述】:

在我的 PHP 页面的开头,我有一个带有保存(提交)按钮的表单。下面我绘制了一个来自数据库的项目列表。我现在希望用户能够勾选他想要选择的项目。我的问题:所有信息都在我的表格之外。如何访问生成的信息?

<form method="post" action="">
<input type="submit" name="save" class="inputButton" value="Save" />
</form>

PHP 函数如下:

drawArticles($id, $option, $credit);

PHP函数drawArticles()的内容:

..CONTENTS REDUCED..
echo        "<div class='groupsTickbox' name='".$aid."'><input type='checkbox'></div>";
echo        "<div class=\"divListGroups\">";
..CONTENTS REDUCED..

【问题讨论】:

    标签: php html forms


    【解决方案1】:

    如果您希望它们自动包含在 POST 请求中,您必须在 &lt;form&gt; 标记中插入所有表单元素。否则,您需要手动编写 JavaScript onSubmit() 处理程序以将这些 DOM 节点的值包含到表单请求中。如果这很重要,您可以用 &lt;form&gt; 元素包围整个页面。

    【讨论】:

    • 直到所有主流浏览器都支持 HTML5 form attribute 差不多了。
    【解决方案2】:

    您可以使用 Javascript 的原生 DOM 遍历方法,例如 document.getElementById( )document.getElementsByTagName( ) 来查找您需要的 DOM 元素,也可以使用 jQuery,如下所示:var tickbox = $('div.groupsTickbox');

    如果您这样做,您将不得不为表单分配一个 onsubmit 处理程序并生成您自己的提交数据。如果您不想这样做,那么您必须将您的元素 放入 &lt;form&gt; 标记中。

    如果你还没有,你应该看看 jQuery 纯粹是因为它在遍历 DOM 方面的强大功能(它还有许多其他好处)

    【讨论】:

      【解决方案3】:

      您始终可以将有关他们查询的关键信息保存在会话 var 中并将其与帖子一起保存,因为这些信息会显示在页面上。如果是第二种形式,有一些非常有趣的关于如何处理网络上的多页表单的教程:

      【讨论】:

        【解决方案4】:

        看看this;它表明您可以使用 javascript 访问 DOM 信息(文档中的任意节点)

        【讨论】:

        • 请解释链接中的信息如何回答问题。
        • 链接说明可以使用javascript访问DOM信息(文档中的任意节点)。
        • @this.josh 因为,如果您想发布原本不在表单中的信息,您可以使用 javascript 将其插入。这就是我想要表达的观点。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-08-23
        • 1970-01-01
        • 2020-08-15
        • 2013-02-06
        • 2013-11-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多