2014-04-07 46 views
0

我在我的Wordpress主题做了一个模板,我有一个问题,我的JQuery加载函数加载HTML到div使用load.php文件存在于相同的目录作为template.php文件,但问题是JQuery看到的页面的永久链接,而不是看到load.php文件的正确的URL /路径。Wordpress Jquery Load()加载错误的URL,由于永久链接

例如:What jQuery是看到的是mywebsite.com/permalinkhere/load?variable11=23 & variable3 = 43这给未找到404

什么的JQuery应该看到的是mywebsite.com/wp-content/ theme/mytheme/load?variable11 = 23 & variable3 = 43

我该如何解决这个问题?

编辑:

load.php只是回声HTML;并且它在WordPress之外运行良好。这里是template.php代码的一部分:

<script> 
$("#first-choice").load("load.php?variable1=load", function() { 
$("#first-choice").prop("disabled", false); 

}); 
</script> 
+0

您能不能告诉你load.php的代码? –

+0

Wordpress有[它自己的方式做Ajax](http://codex.wordpress.org/AJAX_in_Plugins),你会发送请求到'ajaxurl',抓住它并返回rigth内容,而不是'load()'随机页面,你永远不会如何设置网址。 – adeneo

+0

我不认为从'load.php'显示代码会有所帮助。我们需要看看你的代码是如何为JS生成的。 – Class

回答

0

是的。在HTML文件中调用的Java脚本与包含Java脚本的文件相关(如果使用相对路径)。

您可以使用wp_localize_script来设置load.php文件的URL。

wp_localize_script('jquery', 'ajaxload', array('ajaxurl' => get_template_directory_uri().'/load.php')); 

然后

var loadurl = ajaxload.ajaxurl+'?variable1=load'; 
$("#first-choice").load(loadurl, function() { 
    // Code here .. 
} 
+0

非常感谢,最后工作! –

+0

不错..很高兴帮助你.. – madhushankarox