这可能是一件简单的事情,但是我花了太多时间试图让它无法正常工作。
基本上我有以下Bootstrap按钮:
<div class="bs-example">
<div class="btn-group" data-toggle="buttons">
<label title="This will display" class="btn btn-lg btn-info">
<input type="radio" name="toDo" id="toDo" value="enableSSH"> Enable SSH
</label>
<label class="btn btn-lg btn-info">
<input type="radio" name="toDo" id="toDo" value="migrateDB"> Migrate Database
</label>
</div>
我在页面下方有以下按钮,我需要使用上面选择的值:
<button id="submit" class="btn btn-default" type="button">Go!</button>
单击该按钮时,它会触发以下jQuery函数:
$("#submit").click(function(){
var buttonValue = $('#toDo').val();
var phpfile = "submit.php";
var data = {'action': buttonValue};
$.post(phpfile, data, function (response) {
alert("Data has been submitted successfully);
});
});
这应该将所选单选按钮的结果传递给这个PHP脚本:
<?php
if (isset($_POST['action'])) {
switch ($_POST['action']) {
case 'enableSSH':
alert("enableSSH has been selected");
break;
case 'migrateDB':
alert("migrateDB has been selected");
break;
}
}
?>
从jQuery函数提交数据的警报显示正确,但PHP脚本确认已通过的警报未显示。
很抱歉这篇冗长的帖子。请帮忙。
答案 0 :(得分:3)
PHP中没有警报,它是一种无法提醒的服务器端语言。
解决方案是将某些内容返回给ajax调用
<?php
if (isset($_POST['action'])) {
switch ($_POST['action']) {
case 'enableSSH':
echo "enableSSH has been selected";
break;
case 'migrateDB':
echo "migrateDB has been selected";
break;
}
}
?>
并且您将其作为回复
$.post(phpfile, data, function (response) {
alert("Data has been submitted successfully");
alert(reponse); // alert it here instead
});