如果在textarea中输入内容,如何从input type = file中删除选择。以下Jquery失败,因为IE将本地驱动器和目录路径替换为C:\ fakepath \ file.txt。
非常感谢提前。
$("textarea#txt_id").live('keyup', function(){
$('input[type=file]').val('');
});
<textarea name="txt" id="txt_id" rows="8" cols="64"></textarea>
<input type="file" name="file" id="file_id" />
答案 0 :(得分:2)
用相同的html替换文件控件将清除它
$('#fileId').html($('#fileId').html());
或仅使用java脚本......
function clearFileInputField(fieldName) {
document.getElementById(fieldName).innerHTML =
document.getElementById(fieldName).innerHTML;
}
答案 1 :(得分:1)
为您提供解决方案。首先检查浏览器是否为IE,然后使用encodeURI对所有文件路径和名称进行编码,首先必须先执行此操作才能正确捕获未转义的字符,如“\”。然后换掉,它为我工作:
var browserName=navigator.appName;
if (browserName=="Microsoft Internet Explorer")
{
var soloNombre = encodeURI(soloNombre);
soloNombre = soloNombre.replace("C:%5Cfakepath%5C","");
var soloNombre = decodeURI(soloNombre);
alert(soloNombre);
}
像魅力一样。