当前位置: 代码迷 >> JavaScript >> 发布非表单值?
  详细解决方案

发布非表单值?

热度:88   发布时间:2023-06-12 14:23:03.0

我想知道是否有可能以某种方式获取div的值并将其附加到提交的表单上?

使用JavaScript,您可以获得DIV内容并将其插入到隐藏的表单字段中。

一个示例-页面摘要(jQuery为了简单起见,普通的JS也可以使用):

<form id="yourform" action="/some/uri">
   <input type="hidden" name="your_div_content" id="hidden_element" />
   <input type="submit" />
</form>
<div id="yourdiv">
   This text will be copied into the form using JS
</div>
<script>
    $('#yourform').submit(function(){ /* On #yourform submit ... */
        $('#hidden_element').val( /* ... set #hidden_element's value ... */
            $('#yourdiv').html() /* ... to whatever is in #yourdiv . */
        );
    });
</script>

当然,这仅在浏览器中启用JS时有效。

您可能要在表单中使用隐藏字段<input type="hidden"> ,然后使用div的innerHTML在表单提交中设置隐藏字段的value

您可以使用ajax。 这样,您可以发送所需的任何数据。 例如(这是使用mootools的):

var req = new Request({url: 'somepage.php', data: 'queryStringDate'});
req.send();

你去:)

原因可以在没有任何框架的情况下完成,我只是不记得我脑子里的代码:-P

这取决于您所指的“ div值”。

例如,您可以使用document.getElementById(your_div_id_here).innerHTML来检索div中的所有HTML。

另外,您可以使用例如document.getElementById(your_div_id_here).title访问div属性的值,以访问div的title属性。

如果您拦截表单的Submit事件(也许是通过拦截表单的Submit按钮上的click事件),那么您当然可以使用任何包含元素内容的内容进行GET或POST。 但是,使用香草HTML恐怕是不可能的。

将值放入隐藏字段也可能有效,具体取决于首选项。 ;)

您可以有一个隐藏的输入,并在进行提交之前用div的内容填充它,然后将其包括在内。

  相关解决方案