我如何在main.js文件中的jQuery函数中编写php代码

时间:2018-02-22 14:29:35

标签: javascript php jquery

也许对某人来说这很容易,但我不能写好这段代码:

$("<div id='conferm'></div>")
  .appendTo("#contact")
  .html("<span>Your products is Add!<br>check your cart <a href='<?= $config->urls->root ?>cart'>here</a> or keep to shopping</span>")

问题是链接不起作用,因为php $config->urls->root不会打印URL,而只是像文本一样打印它。

如果我在我的php页面中添加此代码效果很好,但在js文件中不起作用。

如何编写它以使链接正常工作?

谢谢!

2 个答案:

答案 0 :(得分:0)

<?php 
     echo '<script> var rooturl = ' . $config->urls->root . ';</script>' 
?>

然后将其更改为:

$("<div id='conferm'></div>")
      .appendTo("#contact")
      .html("<span>Your products is Add!<br>check your cart <a href='" +rooturl+ "cart'>here</a> or keep to shopping</span>");

考虑加载顺序,以便您的JS文件知道您的rooturl变量。在您PHP文件上处理之前,echo必须在html文档上打印JS代码。

答案 1 :(得分:0)

您无法在.js文件中编写PHP代码,因为它们仅适用于javascript。 但是,您可以执行以下操作:

在你的.js文件中创建ajax函数,这将为你的href属性提供正确的值

&#13;
&#13;
var link_href = "";
$.ajax({
  data: "",
  url: "my_php_file.php",
  type: "GET",
  success: function(data){
   link_href = data;
    //data is what your .php file echos
    //in your example you want to make sure your php files echos only href attribute you need for your <a> tag
  }
});
var a = document.getElementById("a_link");
a.setAttribute("href", link_href);
&#13;
&#13;
&#13;