我有一个按钮,调用onclick事件后调用JavaScript函数。该函数验证我的条目,然后创建一个ajax对象来填充我的信息表。一切似乎都做工精细,除非我添加以下代码:jquery提交与javascript事件
echo "$(document).ready(function() { $(\"#newDate\").submit(function() {
ValidateForm('$ID');
}); });";
ValidateForm()是相同的功能我onclick事件呼叫,除了似乎没有放在一个空的警报后,我发送Ajax请求的工作不。在环视后,我发现a similar problem。我理解那篇文章中的问题,除非我做了什么,我无法解决我的问题。在成功就绪状态建立后,我尝试将我的send移动到匿名函数中,甚至尝试将我的最终参数设置为-false-。 (我知道是不是一个有效的解决方案,但它并没有反正工作。
那么,为什么一切都完美地与onclick事件工作,但不是一个jQuery提交方法?提前
function ValidateForm(CQID)
{
var dt=document.newDate.uinput;
if (isDate(dt.value)==false){
dt.focus();
return false;
}
populateDateTable(dt.value, CQID);
}
function populateDateTable(dateString, CQID)
{
//After recieving a date and checking validity populate a table of proceeding dates.
var xmlhttp = createReq();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("BoxCarCapacityDates").innerHTML= xmlhttp.responseText;
}
}
xmlhttp.open("GET",'populateDateTable.php?dateString='+dateString+'&CQID='+CQID, true);
xmlhttp.send();
}
谢谢(切换到一切jQuery的缓慢..)
echo "$(document).ready($(function()
{
$('#newData').click(function()
{
var dt=document.newDate.uinput;
if (isDate(dt.value)==false)
{
dt.focus();
return false;
}
$.get(
{
url: 'populateDateTable.php',
data: 'dateString='+dateString+'&CQID='+CQID,
success: function()
{
$('#BoxCarCapacityDates').html(response);
}
});
});
});
); </script>";
上面的代码提交作为一个答案,但它似乎并没有在所有的工作。
是什么#newDate?一个按钮?形成? – 2010-09-23 22:39:31
这是我的表单ID。 – Aya 2010-09-23 22:41:03
另外,如果您要在PHP中嵌入JavaScript,请尝试使用heredoc。 $ script = << SCRIPT SCRIPT; echo $ script。它非常适合多行字符串,并且特殊字符不需要转义。 – 2010-09-24 12:29:27