Javascript 从动态构建的表单提交时,ajaxForm正在发送空帖子
使用Javascript 从动态构建的表单提交时,ajaxForm正在发送空帖子,javascript,jquery,forms,post,ajaxform,Javascript,Jquery,Forms,Post,Ajaxform,使用ajaxSubmit()提交文件在表单硬编码时可以正常工作。但是动态创建表单时,服务器接收的数据为空 此版本有效 HTML 在.on(“提交”…,jQuery(this).formSerialize()生成“myfile=%5Bobject+文件%5D” 但此版本使用动态创建的表单发送空数据 HTML 但是在这里,debuggin在.on(“submit”…,jQuery(this).formSerialize()中产生” 此函数用于生成表单 // function build_form (
ajaxSubmit()
提交文件在表单硬编码时可以正常工作。但是动态创建表单时,服务器接收的数据为空
此版本有效
HTML
在.on(“提交”…
,jQuery(this).formSerialize()
生成“myfile=%5Bobject+文件%5D”
但此版本使用动态创建的表单发送空数据
HTML
但是在这里,debuggin在.on(“submit”…
,jQuery(this).formSerialize()
中产生”
此函数用于生成表单
//
function build_form (){
var new_inner_div_elem = document.createElement('div');
new_inner_div_elem.id = 'parent_elem_div';
var upload_form = document.createElement('form');
upload_form.id = 'file_upload_form';
upload_form.action = '/upload';
upload_form.method = 'POST';
upload_form.enctype="multipart/form-data";
var file_input = document.createElement('input');
file_input.type = 'file';
file_input.id = 'file_upload_input';
var file_upload_submit = document.createElement('input');
file_upload_submit.type = 'submit';
upload_form.appendChild(file_input);
upload_form.appendChild(file_upload_submit);
new_inner_div_elem.appendChild(upload_form);
return new_inner_div_elem;
}
啊哈!给你,在你的代码里:
var file_input = document.createElement('input');
file_input.type = 'file';
file_input.id = 'file_upload_input';
这是缺失的:
file_input.attr('name', 'myfile');
这是HTML表单仅有的部分,而Dynamic表单没有,所以我想这就是诀窍
如果HTML没有名称,则不会将其传递给
查询字符串或POST数据-将无法检索它
来自PHP
这是从
啊哈!给你,在你的代码里:
var file_input = document.createElement('input');
file_input.type = 'file';
file_input.id = 'file_upload_input';
这是缺失的:
file_input.attr('name', 'myfile');
这是HTML表单仅有的部分,而Dynamic表单没有,所以我想这就是诀窍
如果HTML没有名称,则不会将其传递给
查询字符串或POST数据-将无法检索它
来自PHP
这是从
当表单以友好方式创建时,on是否在
jQuery(“文件上传表单”)中提交代码。on(“提交”…
触发?没有定义build\u file\u upload\u form
这样的函数。我不确定,您是否可以像这样上传文件。重构打字错误。修复了。@hRvoed是的,在这两种情况下,on('submit'
触发。(我的服务器在这两种情况下都会收到一个请求。但在后一种情况下,帖子内容是空的。)我希望不要让服务器代码过于复杂,因为它不会改变,但如果你想的话,我会澄清这一点。当以友好方式创建表单时,是否在jQuery(#file#u upload_form)中提交代码。on(“提交”…
trigger?没有定义build\u file\u upload\u form
这样的函数。我不确定,你可以像那样上传文件。重构打字错误。修复。@hRvoed是的,在这两种情况下,.on('submit'…
触发。(我的服务器在这两种情况下都会收到请求。但在后一种情况下,帖子内容是空的。)我不希望服务器代码过于复杂,因为它不会改变,但如果你想,我会澄清这一点。
var file_input = document.createElement('input');
file_input.type = 'file';
file_input.id = 'file_upload_input';
file_input.attr('name', 'myfile');