Html 无法访问materializecss框架中的文件字段

Html 无法访问materializecss框架中的文件字段,html,css,materialize,Html,Css,Materialize,我刚开始玩弄物化ECSS框架。在浏览表单页面之后。我决定尝试一个简单的例子,如下所示: <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <meta name="viewport" content="width=device-width, initial-scale=1

我刚开始玩弄物化ECSS框架。在浏览表单页面之后。我决定尝试一个简单的例子,如下所示:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
  <meta name="viewport" content="width=device-width, initial-scale=1,     maximum-scale=1.0, user-scalable=no"/>
  <link rel="shortcut icon" href="images/icon.png" type="image/png">
  <title>form example</title>

  <!-- CSS  -->
  <link href="https://fonts.googleapis.com/icon?family=Material+Icons"     rel="stylesheet">
  <link href="css/materialize.css" type="text/css" rel="stylesheet" media="screen,projection"/>
  <link href="css/style.css" type="text/css" rel="stylesheet" media="screen,projection"/>
</head>
<body>
<div class="navbar-fixed">
  <nav class="blue darken-4" role="navigation">
    <ul id="slide-out" class="side-nav">
    <li><div class="userView">
            <div class="background blue darken-3">
                <!--<img src="images/background3.jpg">-->
            </div>
        </div>
    </li>
    </ul>
    <a href="#" data-activates="slide-out" class="button-collapse show-on-large"><i class="material-icons">menu</i></a>
    <div class="nav-wrapper">
    <a id="logo-container" href="index.php" class="brand-logo"><img src="images/icon.png">Form</a>
    <ul class="right hide-on-med-and-down">
    <li><div class="right"><a class="waves-effect waves-light btn  red modal-trigger tooltipped" data-position="bottom" data-delay="50" data-tooltip="Click to login or register " href="login.php" >Login</a></div></li>   
</ul>

</div>
  </nav>
</div>

<form id="uploadimage" class="col s12" method="post" action="" enctype="multipart/form-data"  >
        <div class="form-container">
            <div class="row">
                <div class="file-field input-field col s12">
                    <div class="btn waves-effect waves-light blue darken-3">
                        <span>browse</span>
                        <input type="file" id="image" name="image"  accept="image/x-png,image/jpeg, image/jpg">
                    </div>
                    <div class="file-path-wrapper">
                        <input id="imagef1" name="imagef1" class="file-path validate" placeholder="Image 1: Product Front View" type="text">
                    </div>
                </div>
            </div>

            <center>
                <input type="button" id="postform" onclick="return check(this.form, this.form.image);" class="btn waves-effect waves-light red" value="Post Product" name="postform" />
            </center>
        </div>
</form>

<div id="modal5" class="modal bottom-sheet">
        <div class="modal-content">
            <p align="center">You must provide all the requested details. Please try again</p>
            </div>
</div>

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

  $("#image").change(function(){
      alert("file upload changed");
  });

});

function check(form, image) {
     //Check each field has a value
    if (image.value == '' ) {
        $('#modal5').openModal();
        //alert('You must provide all the requested details. Please try     again');
        return false;
    }
}

</script>
<script src="js/jquery-3.1.1.min.js"></script>
<script src="js/materialize.min.js"></script>
</body>
</html>

范例
浏览

您必须提供所有要求的详细信息。请再试一次

$(文档).ready(函数(){ $(“#图像”).change(函数(){ 警报(“文件上传已更改”); }); }); 功能检查(表格、图像){ //检查每个字段是否有一个值 如果(image.value==''){ $('#modal5').openModal(); //警报(“您必须提供所有请求的详细信息。请重试”); 返回false; } }

单击browse按钮后,不会执行更改时的jquery代码。我做错了什么?

我通过MaterializeCSGithub页面上@wackychocolatefactory的帮助解决了这个问题。答案取决于我的JavaScript文件的顺序。将jquery和Materialiecss的脚本移动到$(document.ready(function(){})的脚本之上

所以我应该把它按这个顺序排列

 <script src="js/jquery-3.1.1.min.js"></script>
 <script src="js/materialize.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {

  $("#image").change(function(){
      alert("file upload changed");
  });

});

function check(form, image) {
     //Check each field has a value
    if (image.value == '' ) {
        $('#modal5').openModal();
        //alert('You must provide all the requested details. Please try     again');
        return false;
    }
}

</script>

$(文档).ready(函数(){
$(“#图像”).change(函数(){
警报(“文件上传已更改”);
});
});
功能检查(表格、图像){
//检查每个字段是否有一个值
如果(image.value==''){
$('#modal5').openModal();
//警报(“您必须提供所有请求的详细信息。请重试”);
返回false;
}
}

您将使用多少个
?@Praveen Kumar我删除了其中一个并编辑了我的代码,它仍然无法解决问题尼斯。。。享受吧<代码>:)