如何添加输入类型"file"在新的一排
How do I add input type "file" in a new row?
当用户在表中添加一行时,应该在每一行的"Image"列下显示输入"file"功能,以便用户可以为每一行选择一个文件。但是,当我添加一行时,它不显示行内的文件输入。
下面是html代码: <table id="qandatbl" border="1">
<tr>
<th class="image">Image</th>
</tr>
</table>
下面是jquery代码
function insertQuestion(form) {
var $tr = $("<tr></tr>");
var $image = $("<td class='image'></td>");
function image(){
var $this = $(this);
var $imagefile = $("<input type='file' name='imageFile' id='imageFile' />").attr('name',$this.attr('name'))
.attr('value',$this.val())
$image.append($imagefile);
};
$tr.append($image);
$('#qandatbl').append($tr);
}
我没有看到对内部函数image()
的调用。为什么会有这样的内函数呢?
类似这样,但我的问题是,什么是this
?由于您当前生成的函数在以后的任何操作中都不会使用,因此我当前删除了该函数,但无法弄清楚$(this).val()
会产生什么结果。
你也传递了一个form
参数,但不使用它?
function insertQuestion(form) {
var $tr = $("<tr></tr>");
var $image = $("<td class='image'></td>");
var $imagefile = $("<input type='file' name='imageFile' id='imageFile' />").attr('name',$this.attr('name'))
.attr('value',$(this).val())
.appendTo($image);
$tr.append($image);
$('#qandatbl').append($tr);
}
您当前的代码段看起来很混乱。试试这个:http://jsfiddle.net/66qAR/
<form id="idOfTheForm" action="?" method="post">
<table border="1">
<tr>
<th class="image">Image</th>
</tr>
</table>
</form>
和这个javascript:
function insertQuestion(form) {
var imageField = $('<input />')
.attr({
type: 'file',
name: 'imageFile',
id: 'imageFile'
});
$(form).find('table').append($('<tr />').append(imageField));
}
insertQuestion($('#idOfTheForm'));
相关文章:
- "未捕获类型错误/丢弃意外“;因为一句台词而出现?(HTML w/<脚本>)
- 为什么"构造函数是一种特殊情况;
- 猫鼬找到一个并推送到一排文档
- 骰子掷成一排
- 正在加载“"循环,每3秒更改一次文本
- 将对象设置为Backbone.js模型,而不必调用“;set()"在每一处房产上
- "搜索并销毁“;迭代不会'不要一次删除所有项目
- 这里有一种新型的广告javascript通过change"window.opener.location”;,我
- 为什么表达式/0+[0-9]/通过了“0”的测试;00f”"f”;是一封信
- "一页应用程序“;DOM操作而不是AngularJS
- "对象没有't支持这一行动”;请致电Ajax.autocompleter
- 有没有一种方法可以在javascript中停止气泡而不使用"e”;参数
- 我怎么能在一个URL中有两种类型的参数,其中一种以“”开头#"而另一个以“0”开头&"并且不替
- bootstrap元素上的砖石结构被推到了新的一排
- 我希望这一排保持正确的班级
- 尝试制作一排宽度与画布宽度成比例的随机砖块
- 如何添加输入类型"file"在新的一排
- 随机宽度组装的三个图像在一排
- 为什么我不能使用键盘上最上面一排的数字呢?
- 显示随机项目从数组上按一下按钮,没有两个在一排