我有一个表单,我需要通过AJAX发送数据。整个想法一旦选择了表单数据,通过jQuery.get()
发送的ajax调用将调用另一个函数,该函数接收并解码PHP中的数据,并将该数据用作id以从数据库获取更多数据。然后将数据库中的数据重新编码并发送到一个javascript函数,该函数根据传递的内容打印更多数据。Ajax拒绝在非常奇怪的情况下发送数据
我的问题是,我随时在参考$_GET
或$_POST
使用<?php ?>
标签在javascript函数,我得到一个错误告诉我,我的javascript函数是未定义的。我知道这是部分,至少,因为当我删除$_GET/$_POST
superglobal AJAX调用确实发送。
任何帮助,这将不胜感激。
这里是我的代码:
jQuery.noConflict();
function printSubCategories(categories) {
for (var i = 0; i < categories.length; i++) {
var opt = document.createElement('option');
opt.text = categories[i]['name'];
opt.value = categories[i]['id'];
jQuery('#subcategories').append(opt);
}
}
function recieveAndPrint() {
<?php
$categories = getCategories(json_decode($_GET['parent']));
?>
printSubCategories(<?=json_encode($categories)?>);
}
function ajaxCategories(pathToFile, ajaxData) {
jQuery.get(pathToFile, {'parent' : ajaxData}, function(ajaxData) {
//alert('Data loaded: ' + ajaxData + <?=json_encode($_POST)?>);
});
recieveAndPrint();
}
您确定在您的动态输出函数中没有发生javascript编译错误。这肯定会导致你所描述的行为?你能给我们在错误情况下的js输出吗? – j0tt