Javascript 没有库的等效代码
我使用教程获得了以下ajax代码。在本教程中,他们拥有库。代码如下:Javascript 没有库的等效代码,javascript,jquery,html,ajax,forms,Javascript,Jquery,Html,Ajax,Forms,我使用教程获得了以下ajax代码。在本教程中,他们拥有库。代码如下: function onsuccess(response,status){ $("#onsuccessmsg").html(response); alert(response); } $("#uploadform").on('change',function(){ var options={ url : $(this).attr("action"),
function onsuccess(response,status){
$("#onsuccessmsg").html(response);
alert(response);
}
$("#uploadform").on('change',function(){
var options={
url : $(this).attr("action"),
success : onsuccess
};
$(this).ajaxSubmit(options);
return false;
});
如果我不想实施怎么办。使用普通ajax(没有库)的等效代码是什么
更新
我尝试了以下代码:
$("#uploadform").on('change',function(){
$.ajax({
url: $(this).attr("action"),
context: document.body,
success: function(){
$("#onsuccessmsg").html(response);
alert("asdf");
}
});
return false;
});
现在它什么也不做了。它更像是:(为格式问题道歉,我在手机上) 您需要通过运行表单字段手动构建数据变量。您可能还想签出,这是写上述内容的一种简写方式
您可以使用前面回答的问题获取需要传递到ajax数据字段的表单数据: 还值得注意的是,如果您要发布表单中的文件,则表单必须具有
enctype=“multipart/form data”
。
使用ajax提交表单时,需要设置contentType:false,processData:false
我已经更新了上面的代码片段以反映这一点
如果这已经回答了您的问题,请将其标记为正确答案。jquery.form.js库非常有用。我建议您一开始就使用它,因为您以后可能会在项目中使用它。谢谢,但现在,我不想使用它。您知道等效的ajax代码吗?非常感谢!我在这个问题中使用的是php文件:如何填写“数据”?这是另外一个问题,您需要单独发布。如果此解决方案适用于异步发布表单,请接受答案。谢谢,好的。非常感谢。还有一个问题。在我在问题中发布的代码中,
onsuccess函数
,有两个参数<代码>成功时的功能(响应、状态){…我如何获得这些?有3个:Anything data,String textStatus,jqXHR jqXHR。您只需在success函数中放置3个变量名。它们可以命名为Anything。它们将自动为您填充,并可在success函数的范围内使用。上传图像时不会发生任何情况。(我删除了“data”)因为我不知道该在里面插入什么。)
$("#uploadform").on('submit',function(e){
e. preventDefault() ;
var formData = new FormData($(this)[0]);
$.ajax({
url: $(this).attr("action"),
context: document.body,
data: formData,
type: "POST",
contentType: false,
processData: false,
success: function(response, status, jqxhr){
$("#onsuccessmsg").html(response);
alert("asdf");
}
});
return false;
});