我正在尝试查询SQL数据库,我无法弄清楚为什么我的代码不起作用。当我调用javascript函数时:
function calledfunction(){
var date = new Date(document.getElementById("datetime1").value);
var dateformat = "'"+date.getFullYear() + "-" + (date.getMonth()+1) + "-" + date.getDate() + " " + date.getHours() +":" + date.getMinutes()+"'";
alert("Value is: " + dateformat);
microAjax("genjsonphp.php?stdt="+dateformat, function(data) {
//edited out
}
我收到提醒:价值是:'2011-12-6 0:0'
当我复制警报中的值并粘贴它时,上面的代码变为:
function calledfunction(){
var date = new Date(document.getElementById("datetime1").value);
var dateformat = "'"+date.getFullYear() + "-" + (date.getMonth()+1) + "-" + date.getDate() + " " + date.getHours() +":" + date.getMinutes()+"'";
alert("Value is: " + dateformat);
dateformat = '2011-12-6 0:0';
microAjax("genjsonphp.php?stdt="+dateformat, function(data) {
//edited out
}
然后代码工作正常。有谁知道出了什么问题?
答案 0 :(得分:4)
您明确引用变量字符串:
"'"+date.getFullYear() ...
所以你要发送
genjsonphp.php?stdt='2011-12-6 0:0'
(注意单引号)
在第二种情况下,您发送:
genjsonphp.php?stdt=2011-12-6 0:0
答案 1 :(得分:1)
此"genjsonphp.php?stdt="+'2011-12-6 0:0'
解析为:"genjsonphp.php?stdt=2011-12-6 0:0"
而"genjsonphp.php?stdt="+dateformat
解析为:"genjsonphp.php?stdt='2011-12-6 0:0'"
观看引号。