我有一页,上面有两种不同的表格。第一个表单允许用户上传图像文件并通过电子邮件发送,第二个表单根据用户输入生成一个 URL。
为了将图像名称添加到 URL,我需要在第二个表单中有一个字段,该字段从第一个表单中的字段复制图像名称(我宁愿不必让用户浏览并选择图像在一页上两次)。我发现跨表单将数据从一个字段复制到另一个字段的最佳方法是以下 jQuery 代码:http://jsfiddle.net/nA37d/ ,但它不适合我的目的。例如,它从文本字段到文本字段工作得很好,但它不能从文件字段到文本字段,或从文件字段到文件字段。
有没有办法获取表单 1 中文件字段的值并将其复制到表单 2 中的任何类型的字段?这是我的基本代码:
<script type="text/javascript">
$(function(){
bindGroups();
});
var bindGroups = function() {
// First copy values
$("input[name='logotoo']").val($("input[name='logoname']").val());
// Then bind fields
$("input[name='logoname']").keyup(function() {
$("input[name='logotoo']").val($(this).val());
});
};
</script>
<form action="#..." method="post" enctype="multipart/form-data">
<input type="file" name="logoname" value="1" />
<input type="submit" value="Upload" /></form>
<form name="form2" action="/url/" method="get">
<label>Logo Name</label> <input type="text" name="logotoo" />
<input type="submit" value="Generate URL" /></form>
谢谢你提供的所有帮助!
最佳答案
只需使用 change()
输入类型文件的处理程序,而不是 keyup:
http://jsfiddle.net/nA37d/169/
$("input[name='a1']").change(function() {
$("input[name='b1']").val($(this).val());
});
对于输入文件到输入文件,我认为出于安全原因不可能。
顺便说一句,这段代码应该重构。
关于javascript - 如何将一个表单的文件上传字段中的值复制到另一个表单的文本字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14444865/