我可以在.js文件中包含一个php脚本吗?用于链式下拉列表


Can i include a php script inside a .js file ? for chained dropdown

我可以在javascript文件之间使用php吗?我的javascript文件有更多来自php脚本的函数这是我的js文件

var hide_empty_list=true;
addListGroup("vehicles", "Area");
addList("Area", "Select a Area", "", "dummy-maker");
addList("Area", "Alappakkam", "Alappakkam", "Alappakkam");
addList("Area", "Porur", "Porur", "Porur");
addList("Area", "Vanagaram", "Vanagaram", "Vanagaram", 1);
addList("Alappakkam", "Select Volunteer", "", "dummy-Alappakkam");
addList("Alappakkam", "Monish", "car", "Alappakkam-Cars");
addList("Alappakkam", "Kala", "suv", "Alappakkam-SUVs/Van");
addList("Alappakkam", "Akil", "truck", "Alappakkam-Trucks", 1);
addList("Porur", "Select Volunteer", "", "dummy-honda");
addList("Porur", "Srinivasan", "car", "Honda-Cars");
addList("Porur", "Lingesh", "suv", "Honda-SUVs/Van", 1);
addList("Porur", "Akash", "suv", "Honda-SUVs/Van", 1);
addList("Porur", "Prakash", "suv", "Honda-SUVs/Van", 1);
addList("Vanagaram", "Select Volunteer", "", "dummy-chrysler");
addList("Vanagaram", "Sudharshan", "car", "Chrysler-Cars", 1);
addList("Vanagaram", "Sarath", "suv", "Chrysler-SUVs/Van");

我的php脚本是

<?php
# here database details      
@mysql_connect('mysql.hostinger.in', 'u467215xxx_xxxx', 'xxxxxxx');
@mysql_select_db('u467215728_chnai');
$sql = "SELECT address FROM member ";
$result = mysql_query($sql);
echo "<select name='address'>";
while ($row = mysql_fetch_array($result)) {
    echo "<option value='" . $row['address'] ."'>" . $row['address'] ."</option>";
}
echo "</select>";
?>

实际上,我在这里要做的是从数据库中获取数据并输入下拉列表。我完成了一个下拉列表的脚本,但在这里它实际上是链式下拉列表。

您不能在js文件中添加php代码。您可以将.js文件重命名为.php,并在脚本标记中添加js代码,如:

<?php
//your php code .....
?>
<script>
//your javascript code
</script>

您可以在PHP中解析JS文件,并在浏览器中呈现之前添加动态数据,但这不是实现这一点的方法。使用ajax调用,从服务器获取信息,并在JS中使用它来修改DOM。如果你使用JQuery,这样的东西会帮助

$.get('super-site.com/info', function(data) {
  data.each(function(item){
    $('#theFormSelect').append('<option>' + item.text + '</option>');
  });
});

会让你开始。服务器必须返回一个JSON对象才能有意义,换句话说,这是未经测试的,不可靠的,它只是你需要做什么的提示,它会失败,YMMV,如果它损坏了你的咖啡壶,我不承担任何责任。