我有一个表单,我存储用户在网站上花费的时间,因此每个用户都有一个ID,我的表单是
<form id="mycash" name="form6" method="post" action="">
<input name="Time_Spent1" value="'.$row['Time_Spent'].'" id="Time_Spent1" type="text" size="7" readonly="readonly" /><input type="button" name="task" id="task" value="submit">
我正在使用此javascript使用ajax提交表单。但它无效。
<script language="javascript">$(document).ready(function(){
$("form#mycash").submit(function() {
var Time_Spent1 = $(\'#Time_Spent1\').attr(\'value\');
var task = $(\'#task\').attr(\'value\');
$.ajax({
type: "POST",
url: "page.tpl.php",
data: "Time_Spent1="+ Time_Spent1 + "&\'{$client[\'id\']}\'="+ \'{$client[\'id\']}\'+ "&task="+ task,
success: function(){
$(\'form#mycash\').hide(function(){$(\'div.success\').fadeIn();});
}
});
return false;
});
});
我想每20秒自动提交此表单。我犯错误的任何建议
答案 0 :(得分:0)
为什么你在jQuery选择器中有'\' $(\'#Time_Spent1 \')应该是$('#Time_Spent1')。希望这会有所帮助。 您应该以JSON格式保留的数据部分
$.ajax({
type: "POST",
url: "page.tpl.php",
data: {"Time_Spent1": Time_Spent1, "task" : task}
...
如果要进行自动提交,则应创建一个函数并为其设置间隔
function submitform(){//Do something}
setInterval(submitform, 20000); //20k milisecond = 20secs
答案 1 :(得分:0)
我没有看到任何自动化。试试这个:
(function submitForm(){
setTimeout(function(){
$("form#mycash").submit();
submitForm();
},20000);
}());