Я занимаюсь этим довольно долгое время, но не нашел хорошего ответа.JSP идентифицирует дубликат загрузки файла
У меня есть четыре поля, которые принимают файлы от пользователя,
<form method="post" action="upload" target="_blank" enctype="multipart/form-data" style="position: absolute; right: 0%; top: 2%;">
Left File : <input type="file" name="dataFile" id="fileChooser" /><br><br>
Right File : <input type="file" name="dataFile" id="fileChooser" /><br><br>
Config File :<input type="file" name="dataFile" id="fileChooser" /><br><br>
my File : <input type="file" name="dataFile" id="fileChooser" /><br><br>
upload<input type="submit" value="Upload" multiple="multiple" />
</form>
, как определить, если пользователь выбирает для загрузки и тот же файл все четыре раза и предотвратить его (т.е. дублируют загрузки)?
это может быть на стороне JSP или на стороне jvv. Использование общей загрузки файлов. Я нашел в своем поиске here, что мне нужно использовать DigestOutputStream, но нет, где я мог бы найти, как его использовать, и бесполезно.
--------------------------------------------- EDIT --------------------------------------
Основываясь на ответах ниже, ve обновил мой код следующим образом:
<form method="post" name="myform" action="upload" target="_blank" enctype="multipart/form-data" style="position: absolute; right: 0%; top: 2%;">
Left File : <input type="file" name="dataFile1" id="fileChooser1" /><br><br>
Right File : <input type="file" name="dataFile2" id="fileChooser2" /><br><br>
Config File :<input type="file" name="dataFile3" id="fileChooser3" /><br><br>
Geco File : <input type="file" name="dataFile4" id="fileChooser4" /><br><br>
</form>
<button type="button" onclick="ValidateFile()" style="position: absolute; right: 8%; top: 20%;">Click to Upload</button>
<script type='text/javascript'>
function ValidateFile()
{
var FileName1 = document.getElementById("fileChooser1");
var FileName2 = document.getElementById("fileChooser2");
var FileName3 = document.getElementById("fileChooser3");
var FileName4 = document.getElementById("fileChooser4");
if(FileName1 == FileName2)
{
alert("Same file cannot be uploaded!");
}
document.myform.submit(); // This works fine, but the alert doesn't. Tried .value and .value() also still doesn't work.
}
</script>
По-прежнему код не работает, какова моя ошибка?
Попробуйте следующее: var FileName1 = document.getElementById ("fielChooser1"). Value; var FileName2 = document.getElementById ("fielChooser2"). Value; var FileName3 = document.getElementById ("fielChooser3"). Value; var FileName4 = document.getElementById ("fielChooser4"). Value; –
Эй, это то же самое, что я сделал выше ryt? –
Нет, вы используете .value(), а не .value..they совершенно разные вещи. –