我尝试上传名称为“ report”的json文件。
如果文件名具有report,staticreport,dynamic_report,则应验证。otherfiles名称应引发错误消息。文件应为.json
report.json ===> pass
staticreport.json===> pass
dynamic_report.json===> pass
report.doc ===> fail
staticreport.xsl===> fail
dynamic_re5port.json===> fail
如何使用javascript来实现
html代码
<input accept=".json" id="contained-button-file" multiple type="file" onChange={ (e) => handleFile(e.target.files) } />
Javascipt代码
const handleFile = (selectorFiles: FileList) => {
var file1 = selectorFiles[0].name.split('.').pop();
if( file1 ==='json') {
//([a-zA-Z0-9\s_\\.\-\(\):])+(.json)$
}
}
答案 0 :(得分:0)
我可能会使用正则表达式来测试名称是否以.json
结尾。
var test = new RegExp('\\.json$');
var file = 'hello.json';
if (file.match(test)) {
console.log('Yay!');
}
答案 1 :(得分:0)
尝试以下方式
HTML代码
<!-- File input field -->
<input type="file" id="file" onchange="return fileValidation()"/>
JavaScript
function fileValidation(){
var fileInput = document.getElementById('file');
var filePath = fileInput.value;
var allowedExtensions = /(\.json)$/i;
if(!allowedExtensions.exec(filePath)){
alert('Please upload file having extensions .json only.');
fileInput.value = '';
return false;
}else{
// perform your actions
}
}
}
答案 2 :(得分:0)
文件类型Validating。 后json文件验证。检查的文件名包含“报告”
var allowedExtensions = /(\.json)$/i;
if (allowedExtensions.exec(selectorFiles[0].name) )
{
if (selectorFiles[0].name.includes('report') ) {
// code here
}
}