如何在不单击任何按钮的情况下将复选框值放入会话变量中?
How to put in checkboxes values into a session variable without any button clicks?
假设我有一个与此非常相似的代码
<form>
<input type="checkbox" name="account1" value="1">
<input type="checkbox" name="account2" value="2">
<input type="checkbox" name="account3" value="3">
<input type="checkbox" name="account4" value="4">
<button type="submit">Delete</button>
</form>
现在我想在用户选中复选框而不单击 submit/delete 按钮后将复选框的值存储在 php 会话中。我计划为此使用 jquery/ajax,但我仍然无法完全理解它,因为我对 ajax 或 jquery.
还很陌生
再补充一下,过程是这样的..
用户可以 select 他想检查的任何帐户。假设他在第 1 页检查了一个帐户。然后他转到另一个页面(分页),然后返回到第 1 页,选中的框仍会被选中。
您可以为此使用 onchange
事件侦听器。
实例here.
index.php
<form>
<input type="checkbox" name="account1" value="1">
<input type="checkbox" name="account2" value="2">
<input type="checkbox" name="account3" value="3">
<input type="checkbox" name="account4" value="4">
<button type="submit">Delete</button>
</form>
<br/><strong>You can see the checkbox values in session below...</strong>
<div id="newDiv">
</div>
<script>
$('*[type="checkbox"]').on("change", function(){
var check = 0;
if(this.checked == true) check = 1;
var value = this.value;
$.post("session.php", { box : value, check : check }, function(data, status){
if(status == "success"){
$('#newDiv').load("values.php");
}
})
})
</script>
session.php
<?
session_start();
if(isset($_POST['box'])){
//Separate session variable for each checkbox.
$checkbox = "checkBox".$_POST['box'];
$_SESSION[$checkbox] = $_POST['check'];
}
?>
values.php
<?
session_start();
print_r($_SESSION);
?>
假设我有一个与此非常相似的代码
<form>
<input type="checkbox" name="account1" value="1">
<input type="checkbox" name="account2" value="2">
<input type="checkbox" name="account3" value="3">
<input type="checkbox" name="account4" value="4">
<button type="submit">Delete</button>
</form>
现在我想在用户选中复选框而不单击 submit/delete 按钮后将复选框的值存储在 php 会话中。我计划为此使用 jquery/ajax,但我仍然无法完全理解它,因为我对 ajax 或 jquery.
还很陌生再补充一下,过程是这样的.. 用户可以 select 他想检查的任何帐户。假设他在第 1 页检查了一个帐户。然后他转到另一个页面(分页),然后返回到第 1 页,选中的框仍会被选中。
您可以为此使用 onchange
事件侦听器。
实例here.
index.php
<form>
<input type="checkbox" name="account1" value="1">
<input type="checkbox" name="account2" value="2">
<input type="checkbox" name="account3" value="3">
<input type="checkbox" name="account4" value="4">
<button type="submit">Delete</button>
</form>
<br/><strong>You can see the checkbox values in session below...</strong>
<div id="newDiv">
</div>
<script>
$('*[type="checkbox"]').on("change", function(){
var check = 0;
if(this.checked == true) check = 1;
var value = this.value;
$.post("session.php", { box : value, check : check }, function(data, status){
if(status == "success"){
$('#newDiv').load("values.php");
}
})
})
</script>
session.php
<?
session_start();
if(isset($_POST['box'])){
//Separate session variable for each checkbox.
$checkbox = "checkBox".$_POST['box'];
$_SESSION[$checkbox] = $_POST['check'];
}
?>
values.php
<?
session_start();
print_r($_SESSION);
?>