Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/477.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检查是否已选择输入文件?_Javascript_Html_Asp.net Mvc - Fatal编程技术网

Javascript 检查是否已选择输入文件?

Javascript 检查是否已选择输入文件?,javascript,html,asp.net-mvc,Javascript,Html,Asp.net Mvc,我目前正在一个网站上工作,您可以在该网站上载文件: <input type="file" name="file" id="file" class="form-control" /> 然后,我有一个按钮,您可以按下该按钮上载所选文件: <button class="btn btn-primary" type="submit">Upload CV</button> 上传简历 在这里,我想按钮是可点击的,只有当一个文件已被选中。这是否可能使用JS实现,以及

我目前正在一个网站上工作,您可以在该网站上载文件:

<input type="file" name="file" id="file" class="form-control" />

然后,我有一个按钮,您可以按下该按钮上载所选文件:

<button class="btn btn-primary" type="submit">Upload CV</button>
上传简历
在这里,我想按钮是可点击的,只有当一个文件已被选中。这是否可能使用JS实现,以及如何实现

提前谢谢

使用Jquery:

$(document).ready(
function(){
    $('input:file').change(
        function(){
            if ($(this).val()) {
                $('input:submit').attr('disabled',false);
                // or, as has been pointed out elsewhere:
                // $('input:submit').removeAttr('disabled'); 
            } 
        }
        );
});

在按钮标记中添加禁用的属性

您可以使用下面的原生JS来实现这一点。选择文件后,该按钮处于启用状态,但如果未选择文件,则该按钮处于禁用状态

var-button=document.querySelector('button[type=submit]');
button.disabled=true;
document.getElementById('file').addEventListener('change',function(){
如果(this.value.length>0){
button.disabled=false;
}否则{
button.disabled=true;
}
});


上传简历
您可以使用JQuery,正如前面所说的那样,但在执行按钮代码之前,最好先验证文件是否已被选中

<input type="file" name="file" id="myFile"/>

<!--Add disabled attribute to the button so that is appears disabled at page load-->
<button id="myBtn" type="submit" disabled>Upload CV</button>

<script type="text/javascript">
        $(function () {

            //when input's value changes
            $("#myFile").change(function () {
                if($(this).val())
                {
                    $("#myBtn").prop("disabled", false);
                }
                else
                {
                    $("#myBtn").prop("disabled", true);
                }
            });

            //when button is clicked
            $("#myBtn").click(function () {
                if($("#myFile").val())
                {
                    console.log("file selected");
                }
            });
        });

</script>

上传简历
$(函数(){
//当输入值更改时
$(“#myFile”).change(函数(){
if($(this.val())
{
$(“#myBtn”).prop(“disabled”,false);
}
其他的
{
$(“#myBtn”).prop(“disabled”,true);
}
});
//单击按钮时
$(“#myBtn”)。单击(函数(){
if($(“#myFile”).val())
{
console.log(“所选文件”);
}
});
});

我对JS很陌生,但我想,当按下按钮时,可以检查是否选择了一个文件,但这并不是我想要实现的目标。我还没有尝试过任何东西,因为我完全不知道如何去做。看看HTML5表单验证。内置…这就像一个符咒,回发后,按钮再次被激活:D谢谢!谢谢你的解决方案!joalcego说,这很有效D