作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在之前选择的 filefield
中选择文件时,我在触发 onchange
事件时遇到问题。我需要能够在上传文件时触发更改事件。
例如,我希望以下场景能够工作:
步骤 1) 用户选择 test1.jpg
步骤 2) 用户再次点击并选择 test2.jpg
步骤 3) 用户再次点击并再次选择 test1.jpg
在最后一种情况下,文件字段不再触发 onchange
事件。可以让它触发吗?我在谷歌上搜索过,但找不到解决方案。我尝试用新的输入字段替换输入字段,但这也不起作用。对于最后一个,我按照以下方式完成:
$('#picturesfile').replaceWith('<input type="file" name="filedata" id="picturesfile">');
更新
我用jsfiddle尝试过,它确实触发了change事件,原来的问题是jcrop
的onselect
事件没有触发我将关闭这个问题并继续寻找该问题的解决方案。
最佳答案
每个 HTML
字符串 jQuery
都会解析它并将其缓存在 $.cache
对象中(如果它少于 512 个符号)。所以你只需要删除输入并像这样创建它:
//create new input
var $newInput = $('<input>', {
type : 'file',
name : 'filedata',
id : 'picturesfile'
});
//remove old and append to parentNode new
$('#picturesfile').remove().parent().append(newInput);
关于JavaScript 上传相同文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21376863/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!