我正在尝试使用 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/