2

チェックボックスのように機能するDIV要素があります。'value'属性を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 に答える