[英]GET ajax request sent to the same php file
目前,我有一个php文件createNewForm.php。 在其中,我有一个复选框列表,当我选中每个复选框时,我希望我的php文件(createNewForm.php)中的sql查询重新填充一个列表。
因此,假设我有“动物”,“植物”,“食物”复选框,然后选中“动物”,则列表中将填充鸡,牛,狗。 如果我选中“食物”,则其中包括“鸡”,“牛”,“狗”,“比萨”,其中动物和食物中都包含“鸡”(对不起,如果您是素食主义者哈哈)。
我不太担心SQL方面的问题,因为该部分正在工作。
以下是我的JavaScript,用于将检查值(动物,植物,食物)发送给自己:
createNewForm.php(JavaScript部分)
var $checkedSites = [];
var $checkedSitesString = '';
$(document).ready(function() {
$('.checkedSites').change(function() {
if($(this).is(':checked')) {
$checkedSites.push($(this).val());
}
else
{
$checkedSites.splice($.inArray($(this).val(),$checkedSites),1);
}
$checkedSitesString = "'" + $checkedSites.join("','") +"'";
var sitesChosen = 'sitesChosen='+$checkedSitesString;
$.ajax({
type: "GET",
url: "createNewForm.php",
data: sitesChosen,
cache: false,
success: function(result){
alert(result);
}
});
});
});
createNewForm.php(php部分)
<?php
if (isset($_GET["sitesChosen"]) && !empty($_GET["sitesChosen"]) && $_GET["sitesChosen"] != '') { //Checks if action value exists
$sitesChosen = $_GET["sitesChosen"];
$productTypePopulationSQL = "SELECT distinct productname
FROM productType
WHERE active = 1
and sitetypeid in (".$sitesChosen.");";
}
else
{
$productTypePopulationSQL = "SELECT distinct productname
FROM productType
WHERE active = 1;
";
}
?>
目前,随着代码的编写,输出将为我提供完整的设置,而与出于理智目的而检查哪一个无关。 当通过Javascript设置php的结果并将SQL语句修改为我想要的值时,我也从php中回显了结果,但是它也连接了从php生成的整个HTML,而没有更改实际页面上的内容。 另外,由于某种原因,此回声将作为警报生成,而不是被写入页面。
谢谢!
诺曼
你真的没有问一个问题。 那样就好了。
就您的代码所说的警告而言。
alert(result);
相反,如果您需要将其“写入页面”,则创建一个div来放置消息。
的HTML
<div id="msg"></div>
JS
var msg= document.getElementById('msg);
msg.innerHTML = result;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.