Javascript 如何使用函数回调提交更改表单
如果他们选择了一个文件,我试图在更改时提交一个表单,但是当我提交时,它没有为我的ajax运行回调函数Javascript 如何使用函数回调提交更改表单,javascript,jquery,Javascript,Jquery,如果他们选择了一个文件,我试图在更改时提交一个表单,但是当我提交时,它没有为我的ajax运行回调函数 $(function(){ $("#page_photo").on("change", function() { alert("1st stage"); $('#image_upload').trigger("submit", function(){ alert("2nd stage"); var for
$(function(){
$("#page_photo").on("change", function() {
alert("1st stage");
$('#image_upload').trigger("submit", function(){
alert("2nd stage");
var formData = new FormData($(this)[0]);
$.ajax({
url: '<?php echo Config::get('URL'); ?>image/upload_user_photo',
type: 'POST',
data: formData,
async: false,
success: function (data) {
if(!data.success){
$.notify(data.error, "error");
}else{
$.notify(data.success, "success");
}
},
cache: false,
contentType: false,
processData: false
});
return false;
});
});
});
$(函数(){
$(“第页照片”)。关于(“更改”,函数(){
警报(“第一阶段”);
$('#图像上传')。触发器(“提交”,函数(){
警报(“第二阶段”);
var formData=新formData($(此)[0]);
$.ajax({
url:“图像/上传用户照片”,
键入:“POST”,
数据:formData,
async:false,
成功:功能(数据){
如果(!data.success){
$.notify(data.error,“error”);
}否则{
$.notify(data.success,“success”);
}
},
cache:false,
contentType:false,
processData:false
});
返回false;
});
});
});
我不希望用户在提交文件之前必须按下submit按钮,就在他们选择文件的时候,因此
。submit
对此不起作用我建议如下。如何准确地获取上传的文件在一定程度上取决于您的HTML,但是如果您能够正确地获取数据,则无需启动提交,只要在发生更改时启动AJAX调用即可
$(function(){
$("#page_photo").on("change", function() {
alert("1st stage");
//BELOW MIGHT NEED TO BE CHANGED TO CORRECTLY GET THE IMAGE
var formData = new FormData($('#image_upload')[0]);
$.ajax({
url: '<?php echo Config::get('URL'); ?>image/upload_user_photo',
type: 'POST',
data: formData,
async: false,
success: function (data) {
if(!data.success){
$.notify(data.error, "error");
}else{
$.notify(data.success, "success");
}
},
cache: false,
contentType: false,
processData: false
});
});
});
$(函数(){
$(“第页照片”)。关于(“更改”,函数(){
警报(“第一阶段”);
//下面可能需要更改以正确获取图像
var formData=new formData($('#image_upload')[0]);
$.ajax({
url:“图像/上传用户照片”,
键入:“POST”,
数据:formData,
async:false,
成功:功能(数据){
如果(!data.success){
$.notify(data.error,“error”);
}否则{
$.notify(data.success,“success”);
}
},
cache:false,
contentType:false,
processData:false
});
});
});
我建议如下。如何准确地获取上传的文件在一定程度上取决于您的HTML,但是如果您能够正确地获取数据,则无需启动提交,只要在发生更改时启动AJAX调用即可
$(function(){
$("#page_photo").on("change", function() {
alert("1st stage");
//BELOW MIGHT NEED TO BE CHANGED TO CORRECTLY GET THE IMAGE
var formData = new FormData($('#image_upload')[0]);
$.ajax({
url: '<?php echo Config::get('URL'); ?>image/upload_user_photo',
type: 'POST',
data: formData,
async: false,
success: function (data) {
if(!data.success){
$.notify(data.error, "error");
}else{
$.notify(data.success, "success");
}
},
cache: false,
contentType: false,
processData: false
});
});
});
$(函数(){
$(“第页照片”)。关于(“更改”,函数(){
警报(“第一阶段”);
//下面可能需要更改以正确获取图像
var formData=new formData($('#image_upload')[0]);
$.ajax({
url:“图像/上传用户照片”,
键入:“POST”,
数据:formData,
async:false,
成功:功能(数据){
如果(!data.success){
$.notify(data.error,“error”);
}否则{
$.notify(data.success,“success”);
}
},
cache:false,
contentType:false,
processData:false
});
});
});
您应该使用以下语法绑定提交回调:
$('#image_upload').bind("submit", function(){
alert("2nd stage");
});
然后使用以下代码触发提交事件:
$('#image_upload').trigger("submit");
应使用以下语法绑定提交回调:
$('#image_upload').bind("submit", function(){
alert("2nd stage");
});
然后使用以下代码触发提交事件:
$('#image_upload').trigger("submit");
我需要提交表单,因为它通过了
enctype=“multipart/form data”
。我需要提交表单,因为它通过了enctype=“multipart/form data”
。你认为触发器(“submit”,function(){})在做什么?你认为触发器(“submit”,function(){})是什么正在做??接受我的喜欢:)将提交最佳答案。接受我的喜欢:)将提交最佳答案。