Javascript JS/AJAX:使用计时器提交表单,而不是单击按钮或刷新页面
我正在尝试在没有页面刷新或提交按钮的情况下提交表单。但我只实现了让JS函数提交输入框值。是否可以在不点击按钮和刷新页面的情况下提交整个表单 JSJavascript JS/AJAX:使用计时器提交表单,而不是单击按钮或刷新页面,javascript,jquery,ajax,Javascript,Jquery,Ajax,我正在尝试在没有页面刷新或提交按钮的情况下提交表单。但我只实现了让JS函数提交输入框值。是否可以在不点击按钮和刷新页面的情况下提交整个表单 JS <script type="text/javascript"> $(document).ready(function() { var timer; $('#yurl).on('keyup', fu
<script type="text/javascript">
$(document).ready(function() {
var timer;
$('#yurl).on('keyup', function() {
var value = this.value;
clearTimeout(timer);
timer = setTimeout(function() {
//do your submit here
alert('submitted:' + value);
}, 2000);
});
});
</script>
$(文档).ready(函数(){
无功定时器;
$('#yurl).on('keyup',function(){
var值=此值;
清除超时(计时器);
计时器=设置超时(函数(){
//你在这里提交吗
警报(“已提交:”+值);
}, 2000);
});
});
html
<form method="post" id="ytVideo" action="">
<input id="yurl" type="text" value="<?php $url ?>" name="yurl">
</form>
如果我很理解你的要求,它在哪里写着//请在这里提交
,你应该放:
$("#ytVideo").submit()
其中ytVideo
是您试图提交的表单的id
祝你好运 我认为这可以很好地解决你的问题。你的小提琴似乎很管用,但问题是你并没有在任何地方提交它
<script type="text/javascript">
$(document).ready(function() {
var timer;
$('#yurl).on('keyup', function() {
var value = this.value;
clearTimeout(timer);
timer = setTimeout(function() {
//do your submit here
$("#ytVideo").submit()
alert('submitted:' + value);
}, 2000);
});
//then include your submit definition. What you want to do once submit is executed
$('#ytVideo').submit(function(e){
e.preventDefault(); //prevent page refresh
var form = $('#ytVideo').serialize();
//submit.php is the page where you submit your form
$.post('submit.php', form, function(data){
//do something with the data
});
});
});
</script>
$(文档).ready(函数(){
无功定时器;
$('#yurl).on('keyup',function(){
var值=此值;
清除超时(计时器);
计时器=设置超时(函数(){
//你在这里提交吗
$(“#ytVideo”).submit()
警报(“已提交:”+值);
}, 2000);
});
//然后包括你的提交定义。一旦执行了提交,你想做什么
$('#ytVideo')。提交(函数(e){
e、 preventDefault();//防止页面刷新
var form=$('#ytVideo').serialize();
//submit.php是您提交表单的页面
$.post('submit.php',表单,函数(数据){
//对数据做点什么
});
});
});
我不确定我是否正确理解了您的问题,但根据我的理解,您试图在达到时间限制后自动提交表格。是吗?是的,当我更改表单id时。我收到警报:submitted:undefined
我在您提供的JSFIDLE中尝试了它,结果对我来说很好。抱歉,我弄错了,它应该是$(“#ytVideo”).submit(),而不是$(“ytVideo”).submit()