我正在运行if-statement
,以检查文件上传输入是否为空。我正在使用以下代码fileNameVal
检查if (fileNameVal != null) {
。如果文件输入中没有任何内容,似乎应该总是运行true。
fileShow.text()
代码行始终显示。
有人看到我在做什么错吗?
var fileShow = $('#fileUploadMessage');
fileShow.hide();
var fileNameVal = '';
$('#uploadedFileTest').change(function () {
fileNameVal = $('#uploadedFileTest').val();
console.log(fileNameVal);
});
$("form#submit").submit(function (e) {
$.LoadingOverlay("show");
if (fileNameVal != null) {
fileShow.text('Please wait while your file uploads.');
fileShow.show();
}
});
#fileUploadMessage {
position: fixed;
bottom: 20vh;
left: 50%;
-webkit-transform: translateX(-50%);transform: translateX(-50%);
color: #000;
font-size: 3rem;
font-family: 'Muli', sans-serif;
letter-spacing: .2rem;
text-align: center;
display: block;
z-index: 9999999999999999999999999999999999999;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form action="" method="POST" id="submit">
<input id="first_name" type="text">
<input type="file" name="uploadedFile" class="inputfile" id="uploadedFileTest" data-multiple-caption="{count} files selected" multiple>
<p id="fileStatus">Upload File</p>
<button type="submit">SEND</button>
</form>
<p id="fileUploadMessage"></p>
答案 0 :(得分:2)
您不会将其初始化为null,而是将其初始化为空字符串,所以请执行以下任一操作:
用支票中的空字符串代替支票:
if (fileNameVal != '') {
替换初始化,使其为空,而不是空:
var fileNameVal = null;
答案 1 :(得分:1)
只做
if (fileNameVal)
如果包含空字符串,空值或不确定值,则返回false
答案 2 :(得分:1)
您需要了解比较,严格比较以及javascript中的错误
基本上是0,'',“”,NAN,null,未定义和false本身以布尔表达式返回false,所有其他文字例如:1,“ HI”,{}将返回true
此图显示比较结果(==或!=)和严格比较结果(===或!==)
这个,你可以做
if(fileNameVal)
{//do stuff
}