我一直在搜索这个精彩的信息网站,但还没找到我正在寻找的东西,只是点点滴滴。
我是整个JavaScript语言/ jQuery库的新手,但我开始越来越喜欢它可以用它做的事情。
我有一个文件array.php,它打印出json格式的变量,其中包含我想在.datepicker日历中禁用的某些日期。
除了来自sql part的变量之外,我已经完成了整个工作。
这有效:var $BadDates = new Array("2012-05-28","2012-05-29","2012-05-30");
我想要的是这样的事情:
$.getJSON('array.php', function(data) {
var $BadDates = [];
}
我的array.php:
$query = "SELECT * FROM dates";
$query_result = mysql_query($query) or die(mysql_error());
$results = array();
while($row = mysql_fetch_assoc($query_result)) {
$n["startdate"] = $row['startdate'];
array_push($results, $n);
}
print json_encode($results);
这就是我想要完成的事情(我知道这一切都是错的,所以我可以说明我的想法):
$BadDates = new Array("$.getJSON('array.php')");
一直在查看许多解决方案而没有任何运气......
我感谢所有帮助!
/奥斯卡
答案 0 :(得分:0)
这里没有必要使用AJAX,但我会向您展示两种方式:
首先,由于您的PHP文件正在打印JSON编码的字符串,您可以在PHP生成的页面中将其包含在必要的位置:
<?php
/* Some php */
?>
<!-- some html -->
<script type="text/javascript">
var badDates = <?php include('array.php'); ?>;
/* do something with badDates, which is now a JS array */
</script>
<!-- some more html -->
<?php
/* Some more php */
?>
它会输出类似:http://codepad.org/4xHlcwig
的内容对于AJAX检索的数组,您将:
<script type="text/javascript">
$.ajax({
url: '/array.php',
dataType: 'json',
success: function (data) {
/* data contains a JS array which was outputted from your file and decoded by jQuery for you */
}
});
/* -OR- your shorthand method */
$.getJSON('array.php', function(data) {
/* data contains a JS array which was outputted from your file and decoded by jQuery for you */
}
</script>