#jquery
#jquery
Вопрос:
у меня есть форма, в которой я сохраняю время, проведенное пользователями на сайте, поэтому для каждого пользователя есть один идентификатор, а моя форма
<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 "amp;'{$client['id']}'=" '{$client['id']}' "amp;task=" task,
success: function(){
$('form#mycash').hide(function(){$('div.success').fadeIn();});
}
});
return false;
});
});
я хочу автоматически отправлять эту форму каждые 20 секунд. любое предложение, в котором я делаю ошибку
Ответ №1:
Я не вижу никакой автоматизации. Попробуйте это:
(function submitForm(){
setTimeout(function(){
$("form#mycash").submit();
submitForm();
},20000);
}());
Комментарии:
1. я сделал это, спасибо, но автоматическая отправка не работает. Пожалуйста, проверьте свой код автоматической отправки. я думаю, что в коде есть какая-то ошибка
Ответ №2:
Почему у вас ‘ в селекторе 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