我正在以此触发文件名字段的更改
ACCOUNT_DEFAULT_HTTP_PROTOCOL = 'https'
通过按钮调用文件对话框的地方:
$('#filename-field').change(function()
{
...
});
它在Firefox中始终有效。但是在Chrome中,如果我选择的文件与上次相同,则不会触发change事件。显然,两种浏览器对“更改”的含义有不同的解释。
是否有任何让Chrome能够识别选择文件的简单方法的想法?
答案 0 :(得分:1)
您可以添加一个 public enum Note {
DO, RE, MI, FA, SOL, LA, SI;
static {
Enum.valueOf(Note.class, Note.DO.name());
}
public static Note valueOfOrDefault(String name, Note defaultValue) throws Exception {
return Enums.valueOfOrDefault(Note.class, name, defaultValue);
}
public static <T extends Enum<T>> boolean hasValueFor(String name) throws Exception {
return Enums.hasValueFor(Note.class, name);
}
}
事件,该事件在选择新文件之前清除输入。这样可以确保任何文件选择(包括再次选择同一文件)都将触发click
事件。
change
var $filename = $('#filename-field');
$filename.click(function() {
$(this).val('');
});
$filename.change(function() {
console.log("File was changed.");
});
(如果您更喜欢用这种方式编写,当然可以将这两个事件链接起来。)