我正在尝试在不单击按钮或刷新页面的情况下提交表单。提交表单后,我将通过 php.ini 回显输入字段中的值。问题是我添加了一个计时器但根本没有做任何事情。一旦用户停止输入两秒(keyup),然后获取该值,如何设置计时器? EXAMPLE
JS
<script>
$(function() {
var timer;
$(".submit").click(function() {
$('submit').on('keyup', function() {
var name = $("#name").val();
var dataString = 'name='+ name;
$.ajax({
type: "POST",
url: "index.php",
data: dataString,
success: function(result){
/*$('.success').fadeIn(200).show();
$('.error').fadeOut(200).hide();*/
$('#special').append('<p>' + $('#resultval', result).html() + '</p>');
}
});
return false;
});
}, 2000;
});
</script>
PHP
<?php
if($_POST){
$url = $_POST['name'];
echo ('<b><span id="resultval">'.$url.'</span></b>');
}
?>
最佳答案
http://jsfiddle.net/earlonrails/pXA6U/2/
$(function() {
var timer = null;
var dataString;
function submitForm(){
alert("success");
$.ajax({ type: "POST",
url: "index.php",
data: dataString,
success: function(result){
alert("success");
}
});
return false;
}
$('#submit').on('keyup', function() {
clearTimeout(timer);
timer = setTimeout(submitForm, 2000);
var name = $("#name").val();
dataString = 'name='+ name;
});
});
关于javascript - JS/Ajax : Submit form without page refresh or button click,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11479309/