我在default.php中有这段代码:
jQuery(document).ready(function() {
jQuery(function($) {
var $from = jQuery("#from"),
$to = jQuery("#to");
$from.datepicker({
numberOfMonths: 1,
minDate: 1,
dateFormat: 'dd-mm-yy',
onClose: function(selectedDate) {
$to.datepicker("option", "minDate", selectedDate);
}
});
$from.change(function() {
jQuery.ajax({
url: 'index.php?option=com_vehiclemanager&task=default2',
type: 'POST',
data: {
datepicker_value: $(this).val()
},
success: function(data) {
$('#result').html(data);
}
});
});
...
这是php脚本:
<?php
$database = JFactory::getDBO();
$datepicker_value = isset($_POST['datepicker_value']) ? $_POST['datepicker_value'] : NULL;
$month = date("m",strtotime($datepicker_value));
$selectstring = "SELECT * FROM #__vehiclemanager_rent_sal WHERE fk_vehiclesid = 128 AND monthW = '$month'";
$database->setQuery($selectstring);
$string = $database->loadObject();
header('Content-Type: application/json');
$array[] = array(
'deposito'=>$string->deposit,
'spese'=>$string->cfee,
);
echo json_encode($array);
?>
我在表中有一个jquery datepicker,我想通过带有ajax调用的数据库查询从php脚本中选择变量,我可以看到json对象[{"deposito":"300","spese":"100"}]
但单个php变量显示我未定义。
我在ajax url中插入了任务,因为文件名将我发送回index.php,即主页,因为这是一个外部插件。
我希望自己解释并感谢你的帮助。
答案 0 :(得分:0)
而不是$(this).val()
,请尝试引用实际元素。这样的事情:$('#from').val()
。