2

我有一个像复选框一样工作的 DIV 元素。我想将其“值”属性提交到基于 PHP 的表单中,但它不会将 DIV 响应传递给 PHP 文件。

HTML:

 <form action="test.php" method="post">
    <div id="test1" value="testvalue" name="test" checked="checked"></div>
    <input type="submit" />
 </form>

PHP:

<?php
$test = $_POST['test'];
echo $test;
?>
4

2 回答 2

10

只有表单元素被发送回服务器。如果要发送值,则需要创建一个输入元素。你可以考虑制作一个<input type="hidden" name="test" value="testvalue".

为了响应您使用 jQuery 注释制作的自定义复选框,您可以使用 jQuery 设置隐藏输入元素的值。这将让您继续使用 div,但有一个值会被发送回服务器。

于 2013-02-02T21:04:18.487 回答
3

@andrew-jackman 说的是正确的,但我仍然在 jQuery 上摆弄了一下。

我包含了一个隐藏字段来管理数据并使用 jQuery 的切换来复制复选框功能

<form action="test.php" method="post">
  <div id="test1" value="testvalue"  checked="checked">
    <input type="hidden" name="test" id="hiddenfield" />
  </div>
<input type="submit" />

javascript

$('div#test1').toggle(function(){
  $('input#hiddenfield').val('checked');
  alert($('input#hiddenfield').val());
},function(){
  $('input#hiddenfield').val('');
  alert($('input#hiddenfield').val())
})

http://jsfiddle.net/kumiau/nPEYw/1/

于 2013-02-02T21:15:10.507 回答