提交按钮没有发送任何东西
Submit button not sending anything
我正在尝试使用这个定制的提交按钮,这是与这个网站设计,我正在使用,我不知道如何使提交按钮发送POST请求与我的页面上的表单。到目前为止,这个按钮唯一能做的就是在网页上显示"谢谢!"下面是代码:
//Signup Form.
(function() {
// Vars.
var $form = document.querySelectorAll('#signup-form')[0],
$submit = document.querySelectorAll('#signup-form input[type="submit"]')[0],
$message;
// Bail if addEventListener isn't supported.
if (!('addEventListener' in $form))
return;
// Message.
$message = document.createElement('span');
$message.classList.add('message');
$form.appendChild($message);
$message._show = function(type, text) {
$message.innerHTML = text;
$message.classList.add(type);
$message.classList.add('visible');
window.setTimeout(function() {
$message._hide();
}, 3000);
};
$message._hide = function() {
$message.classList.remove('visible');
};
// Events.
// Note: If you're *not* using AJAX, get rid of this event listener.
$form.addEventListener('submit', function(event) {
event.stopPropagation();
event.preventDefault();
// Hide message.
$message._hide();
// Disable submit.
$submit.disabled = true;
// Process form.
// Note: Doesn't actually do anything yet (other than report back with a "thank you"),
// but there's enough here to piece together a working AJAX submission call that does.
window.setTimeout(function() {
// Reset form.
$form.reset();
// Enable submit.
$submit.disabled = false;
// Show message.
$message._show('success', 'Thank you!');
//$message._show('failure', 'Something went wrong. Please try again.');
}, 750);
});
如果您想使用ajax
并在成功时显示Thank you
之类的消息,并在出现错误时显示错误消息。
用这样的东西替换setTimeout()
调用:
// get url of the form
var url = $form.attr('action');
// get the values of the form
var data = {};
$.each($form.serializeArray(), function(i, field) {
data[field.name] = field.value;
});
// your ajax to post
$.ajax({
url: url,
type: 'POST',
data: data,
success: function(data) {
// Show thank you message if success.
$message._show('success', 'Thank you!');
// Reset form.
$form.reset();
//re-enable submit
$submit.disabled = false;
},
error: function(e) {
// Show error message if error.
$message._show('failure', 'Something went wrong. Please try again.');
//re-enable submit
$submit.disabled = false;
}
});
你需要删除
event.preventDefault();
更多信息请查看http://api.jquery.com/event.preventdefault/
相关文章:
- 是否有任何可能的原因使我应该指定类型=“”;按钮“;用于我的按钮元素
- 我必须点击两次才能激活任何按钮操作(离子/角度)
- 如何在jquery中检测浏览器的后退按钮,如果有任何对话框打开,请关闭它
- 如果没有任何输入,如何启用按钮
- 如何通过ajax php将图像上传到服务器本地目录,其中html表单haven't任何传统的提交按钮
- 如何将按钮的数据属性设置为输入[type=text]中设置的任何值
- JavaScript - 如果选中任何复选框,请选择单选按钮
- 如果未输入任何内容,则使 JavaScript 按钮不执行任何操作
- ajaxForm插件在任何单击<按钮>上提交
- 创建按钮不调用表单内的任何操作
- 如何检查是否没有选中任何单选按钮
- 单击页面中的任何按钮时,使用Jquery file Upload时都会打开文件对话框
- 按钮不起任何作用
- 是否有任何方法可以在单击“加载前确认”对话框的“确定”按钮后执行某些操作
- 单击时无法禁用第二个按钮或任何其他按钮
- 为什么本地化仅在单击日期或任何其他按钮后才会更改
- 为什么任何html按钮都会导致aspx页面回发
- 如何阻止用户点击任何其他按钮,而页面刷新(从模态窗口解决方案的一部分)
- 如何调整空格键和回车只适用于第三个按钮,不适用于任何其他按钮
- 这两个模态弹出框出现在点击任何一个按钮