我有一个表单(#searchform),我想多次提交而不重新加载页面,所以我使用 jQuery 和 post-method。我想存储在名为target的变量(数组、列表或其他)中选中了哪些复选框,以及在变量diff中选择了哪个单选按钮。
这些变量也需要在 PHP 中可用。我尝试以多种方式将它们作为ftar和fdiff传递,但没有任何效果。
任何帮助深表感谢!
submit.js 中的 JQuery:
$(document).ready(function () {
var target = new Array();
$('#searchform input:checked').each(function() {
target.push($(this).attr('value'));
});
var diff = $('#searchform').find("input[class='diff']").val();
$.post('index.php', {ftar: target, fdiff: diff});
});
index.php 中的 HTML 和 PHP:
<!DOCTYPE html>
<html lang="en-US">
<head>
<title></title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<script src="js/submit.js"></script>
</head>
<body>
<?php
ini_set('display_errors',1);
error_reporting(E_ALL);
$link = new mysqli("localhost", "root", "password", "mytable");
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$target = $_POST['ftar'];
$diff = $_POST['fdiff'];
?>
<div id="right">
<div class="content">
<form id="searchform" method="POST" action="/">
<input type="checkbox" value="Check1">
<input type="checkbox" value="Check2">
<input type="checkbox" value="Check3">
<input type="radio" class="diff" value="Radio1">
<input type="radio" class="diff" value="Radio2">
</form>
</div>
</div>
</body>
</html>