我正在开发一个wordpress插件,并且在ajax方面遇到了一些问题。 我的插件所做的是添加一个表单,然后验证输入的数据并将值存储在数据库中。
我的ajax帖子如下:
$.ajax({
type:"POST",
url: "process.php",
data: datastring,
success: function() {
$('#formwrapper').html("div id='message'></div>");
$('#message').html("<h2>Contact form submitted!</h2>")
.append("<p>We will be in touch soon.</p>").hide().fadeIn(1500, function() {
$('#message').append("<img id='checkmark' src='images/check.png' />");
});
}
});
以上代码位于名为'js'的文件夹中的javascript文件中,该文件夹位于我的插件的根目录中。问题是当提交数据时,ajax帖子找不到“process.php”。它存储在我的插件文件夹的根目录中。我想知道是否有一个我可能缺少的功能,这将允许我找到相对于javascript文件的php文件的URL,而不必每次都设置一个绝对的url路径?
答案 0 :(得分:0)
是你的文件夹结构吗?
/
/js/file.js
/plugin/process.php
因为那时你可以说
url: "../plugin/process.php",
或
url: "/plugin/process.php",
答案 1 :(得分:0)
改变这个:
url: "process.php",
到此:
url: "../plugin/process.php",
作为旁注,你在这里错过了ajax成功的<
:
$('#formwrapper').html("<div id='message'></div>");
//---------------------^-----------------------------here you missed '<'
答案 2 :(得分:0)
如果要访问父文件夹中的文件。您可以使用../文件上一个目录。 所以要解决这个问题,请致电:
../process.php