显示当前文件输入有文件后的下一个文件输入
Show next file input after current file input has a file
我试图显示第一个列表项,然后当第一个输入文件选择了一个文件时,我想显示下一个列表项等等,我一直有问题。我应该如何处理?
<li id="0"><input size="30" name="images[]" class="my-input-file" type="file"></li>
<li id="1"><input size="30" name="images[]" class="my-input-file" type="file"></li>
<li id="2"><input size="30" name="images[]" class="my-input-file" type="file"></li>
<li id="3"><input size="30" name="images[]" class="my-input-file" type="file"></li>
<li id="4"><input size="30" name="images[]" class="my-input-file" type="file"></li>
<li id="5"><input size="30" name="images[]" class="my-input-file" type="file"></li>
<li id="6"><input size="30" name="images[]" class="my-input-file" type="file"></li>
<li id="7"><input size="30" name="images[]" class="my-input-file" type="file"></li>
<li id="8"><input size="30" name="images[]" class="my-input-file" type="file"></li>
<li id="9"><input size="30" name="images[]" class="my-input-file" type="file"></li>
最初隐藏所有输入元素,然后将事件侦听器附加到输入元素。如果指定了文件,则会显示父li
元素的下一个同级元素。
此处示例
$('ul>li:not(:first)').hide();
$('ul>li>input').on('change', function () {
if (this.value) {
$(this).parent().next().show();
}
});
若您想确定之前显示的元素之一是否发生了更改,并且文件是否未被选中,可以使用以下方法:
此处示例
$('ul>li:not(:first)').hide();
$('ul>li>input').on('change', function () {
if (this.value) {
$(this).parent().next().show();
}
$(this).closest('ul').find('li').prevAll().find('input').filter(function () {
return !this.value;
}).parent().nextAll().hide();
});
相关文章:
- Javascript,文件输入和FormData问题
- Javascript获取具有不同id的文件数's来自没有多个属性的文件输入元素
- 访问javascript文件输入变量的值
- 从IE中的不同元素调用时,文件输入控件未正确启动
- 多次打开多个文件输入,而不会丢失以前选择的文件
- jquery形成多文件输入字段Value()
- 如何从 Chrome 中的文件输入中删除“未选择文件”工具提示
- 如果从文件输入按钮调用 .ajaxSubmit() 时,它是必需的表单
- 生成由文件输入在特定时间选择的视频文件的缩略图/快照
- 使用javascript获取文件输入
- krajee引导程序文件输入上传
- on('change')不适用于动态添加的文件输入
- 选择要初始化精细上传器的文件输入
- 在DOM中以img的形式插入文件输入
- 单击跨度内的隐藏文件输入会导致RangeError
- 显示当前文件输入有文件后的下一个文件输入
- Krajee文件输入小部件'上传'方法引发异常
- 在引导文件输入中通过post发送一个额外的变量
- 引导文件输入
- 为什么在文件输入上触发点击事件也会在表单上触发提交事件