确定文件的输入何时包含值


Determine when an input of file contains a value

我有一个带有文件输入和提交输入的应用程序。我希望在文件输入有值之前禁用提交输入。如何使用JS检查此类信息?我试着在文件输入中添加一个"必需",但仍然不起作用。。。

我应该只使用PHP并检查$_FILE是否为isset()吗?

我应该只使用PHP并检查$_FILE是否为isset()吗?

确保服务器达到预期效果是一种很好的做法。因此,是的,还应该在服务器上对文件和最终的错误进行额外的检查。

下面是一个示例,说明您在客户端需要什么。

JSFiddle

HTML

<form name="fileForm" onchange="changed()">
  <input type="file" name="image">
  <input type="submit" name="submit" disabled>
</form>

JavaScript

function changed() {
    var form = document.forms.fileForm;
    if(form.image.value.length > 0) {
        form.submit.removeAttribute("disabled");
    } else {
        form.submit.setAttribute("disabled", "");
    }
}

试试这个

<form name="form1">
          <input type="file" name="image" id="file_upload">
          <input type="submit" name="submit" id="btn_submit" >
        </form>
jQuery(document).ready(function()
{    
    /*To disable the button on load*/ 
    jQuery("#btn_submit").attr('disabled','disabled'); 

     jQuery("#file_upload").change(function()
    {       
       var file_value= jQuery(this).val();
      if(jQuery(this).val() === '')
      {                                          
        jQuery("#btn_submit").attr('disabled','disabled');                                         
      }
      else
      {
        jQuery("#btn_submit").removeAttr('disabled');
      }
  });
});