javascript - 当我尝试使用更改时无法从提交函数调用
问题描述
点击功能工作正常,但是当我使用更改功能时,它没有点击提交功能
示例 1:
$('button').click(function(e) {
$('form').submit(function(event) {
event.preventDefault(); //prevent default action
var post_url = $(this).attr("action"); //get form action url
var request_method = $(this).attr("method"); //get form GET/POST method
var form_data = new FormData(this); //Encode form elements for submission
$.ajax({
url : post_url,
type: request_method,
data : form_data,
contentType: false,
processData:false,
}).done(function(response) { //
//pass
}).fail(function(response) {
//fail
});
});
});
示例 2:
$('input').change(function(event) {
$(this).parents('form').submit(function(event) {
event.preventDefault(); //prevent default action
var post_url = $(this).attr("action"); //get form action url
var request_method = $(this).attr("method"); //get form GET/POST method
var form_data = new FormData(this); //Encode form elements for submission
$.ajax({
url : post_url,
type: request_method,
data : form_data,
contentType: false,
processData:false,
}).done(function(response) {
//pass
}).fail(function(response) {
//fail
});
});
});
有人可以帮助我为什么示例 2没有按我的意愿工作。如果您看到两个代码相同但仅更改事件名称。
我犯了错误还是它的 Jquery 默认行为?
解决方案
我想向您推荐另一个答案-Detecting input change in jQuery?
问题在于不会在输入字段上触发的“更改”事件,您应该监听其他事件,例如“输入”、“按键按下”、“按键”或“更改”事件收听应该在不同的表单元素上,例如选择(下拉框)
推荐阅读
- python - Python - Scrapy 到 Json 输出拆分
- c# - 如何对零和一的字符串数组进行排序?
- magento - 我想覆盖产品视图 phtml 页面,我在 stackoverflow 和某处阅读了所有解决方案,没有找到任何更改或覆盖
- html - 从 RGBA 背景过渡线性渐变背景
- javascript - django模板调用js对象
- php - $_SESSION 变量设置后不可用
- javascript - 如何从给定的数字生成数字?
- javascript - 如何使用变量名执行函数?
- xslt - 根据字段值拆分/过滤 xml
- c# - Catel 是否将相同服务的耦合实现提供到一个集合中?