【发布时间】:2016-07-04 05:52:21
【问题描述】:
这是假设使用 jQuery 和 $_POST['points'] 和 echo 它在 add.php 中获取已检查收音机的 id
添加.php:
<div class="col-md-10">
<form role="form" method="POST">
<div class="radio">
<label><input type="radio" name="optradio" id="1"> Leadership </label>
<label><input type="radio" name="optradio" id="2"> Management </label>
<label><input type="radio" name="optradio" id="3"> Distribution </label>
</div>
<div>
<?php
if (isset($_POST['points']))
{
echo $_POST['points']." is the value";
}
else
echo 'none';
?>
</div>
</form>
</div>
Javascript:
$("input[type=radio]").on("click",function()
{
var value=($('input[type=radio] [name=optradio]:checked').attr('id'));
$.post("./add.php", {points: value}, function(data)
{
alert(data);
});
});
但是,每次我单击单选按钮时,它都会显示一个警报弹出窗口并重新加载整个add.php 代码INSIDE 警报弹出窗口,而不是通过$_POST['points'] 在@987654328 中回显它@。
页面回显'none' 并且$_POST['points'] 的值在警报弹出窗口中是正确的。
*注意:JS 文件已经加载
我发现它与none 相呼应,因为尚未选中/单击单选按钮。但是在我单击单选按钮后页面不会加载,但页面会在警报窗口内重新加载。
除了警报之外,我还有什么遗漏或者我应该做的吗? 或者 是否有其他方法可以获取已检查收音机的 id?
编辑
<div class="col-md-10">
<form role="form" method="POST">
<div class="radio">
<?php
foreach(returnFromTable($GLOBALS['table_key_area']) as $keyarea)
{
echo '<label><input type="radio" name="optradio" id="'.$keyarea['id'].'">'.$keyarea['description'].' </label>';
}
?>
</div>
<div>
<?php
if (isset($_POST['points']))
{
$x = $_POST['points'];
}
else
echo 'none';
?>
</div>
</form>
</div>
【问题讨论】:
-
服务器在 post 调用中返回 add.php 页面。并且您正在警报框中显示此返回值。
-
@M4R1KU 除了警报之外,还有其他方法可以将值从 jquery 返回到 php 吗?警报返回值但重新加载警报内的页面
标签: javascript php jquery alert