javascript - 如何将查询结果传递给javascript

标签 javascript php arrays

我正在尝试使用 javascript 函数创建国家/地区列表,例如:

    <div id='content'>
        <script type="text/javascript">

            $(document).ready(function () {               
           var countries = new Array("Afghanistan", "Albania", "Algeria", ...);

            // Create a jqxComboBox
            $("#jqxComboBox").jqxComboBox({source: countries, multiSelect: true, width: 600, height: 25});           


            $("#arrow").jqxButton({  });
            $("#arrow").click(function () {
                $("#jqxComboBox").jqxComboBox({ showArrow: false });
            });
            .       
            .
            .

但是我想更改从数据库中获取的 var 国家/地区的来源,我的 sql 查询是 $q = "SELECT Country FROM Countrytbl";

我还是 js 初学者,所以不知道如何做到这一点!!

注意:每个国家/地区应使用两个引号“”以使列表有效

最佳答案

这样改

var countries = <?php echo json_encode($countries); ?>;

其中 $countries 是您的结果数组。例如,如果您的 PHP 数组如下所示:

$countries = array("Afghanistan", "Albania");

那么 HTML 的最终结果将是这样的:

<div id='content'>
    <script type="text/javascript">

        $(document).ready(function () {               
           var countries = ["Afghanistan", "Albania"];
 ...

PHP 完成之后就可以了。当然,这假设该 HTML 所在的任何文件都可以访问 $countries 变量(并且它已正确填充和定义)。如果没有,您将收到一个 javascript 错误:

var countries = ;

这可能会出现在您页面的源代码中。

仅供引用 JSON,您有时可能会看到它,代表 Javascript 对象表示法。这是一种将 Javascript 对象(和数组)表示为字符串的奇特方式。因此,json_encode 将 PHP 数组转换为 Javascript 可以理解为数组的字符串(在本例中)。然后,就像 PHP/HTML 文件中的任何字符串一样,您只需将其回显到您想要的位置即可。

希望有帮助。

关于javascript - 如何将查询结果传递给javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52784967/

相关文章:

php - 在 MySQL 和 PHP 中,UTC 上的纪元时间转换为日期是不同的

arrays - 比较两个数组以在 Google 应用程序脚本上找到相等值的最快方法

java - 如何从文件中将字符串读入字符串数组?

javascript - 从 React 页面导航到纯 HTML 页面

javascript - 尝试自动播放某些音频时,我不一致地收到 "play() failed because the user didn' t 首先与文档交互”错误

javascript - Bootstrap 图像定位在背景之上

javascript - 使用参数更改innerHTML

php - MySQL 基本触发器 - 不工作

javascript - JQuery Form仅在某些浏览器中提交

java - 有没有比这更有效的方法来用字符串引用 int 数组