发表非表格价值?

时间:2010-06-30 08:31:55

标签: javascript

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

6 个答案:

答案 0 :(得分:3)

使用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时才有效。

答案 1 :(得分:2)

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

答案 2 :(得分:1)

你可以使用ajax。这样你就可以根据需要发送你想要的任何数据。 例如(这是使用mootools):

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

你去:)

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

答案 3 :(得分:1)

这取决于你所说的“div的价值”。

例如,您可以使用document.getElementById(your_div_id_here).innerHTML

检索div中的所有HTML

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

答案 4 :(得分:0)

如果您截取表单的提交事件(可能是通过拦截表单提交按钮上的click事件),那么您当然可以使用包括元素内容在内的任何内容进行GET或POST。但是,使用vanilla HTML,我担心这是不可能的。

将值隐藏到隐藏字段中也可能有效,具体取决于偏好。 ;)

答案 5 :(得分:0)

你可以有一个隐藏的输入,然后在提交之前用div的内容填充它,然后它就会包含在内。