2017-01-25 18 views
0

onchangeイベントに問題があります。 ChromeやFFでもうまく動作しますが、IEでは動作しません。onchangeはIEでは動作しませんが、ChromeとFFで完全に起動します

<div class="panel-body panel-default upload"> 
    <div class="form-group upload"> 
     {!! Form::open(array('url'=>'scriptUpload/upload','method'=>'POST', 'files'=>true, 'class' => 'fluid ui action labeled input')) !!} 
     <label for="project" class="col-sm-6 control-label">Elementary script</label> 

      <div class="control-group"> 
       <div class="controls input"> 
        <input id="files" type="text" class="input upload" readonly> 
         <label class="col-sm-5"> 
          <span class="btn btn-primary upload"> 
           Browse&hellip; <input name='elementaryScript[]' id='elementaryScriptId' type="file" style="display: none;" multiple onchange="isUploadPossible(this)"> 
          </span> 
         </label> 

       </div> 
      </div> 
     <div id="success"> 
      {!! Form::button('Upload', array('id' => 'submitButton', 'class'=>'btn btn-primary upload', 'onClick' => 'fileExists()', 'disabled'=>'true')) !!} 
      {!! Form::close() !!} 
     </div> 
    </div> 
</div> 

をそしてここのJSと呼ばれる機能である:ここでは、コードですので、基本的に

function isUploadPossible(elem) { 
    if (elem.value == "") 
     elem.getRootNode().getElementsByTagName('button').submitButton.disabled = true; 
    else 
     elem.getRootNode().getElementsByTagName('button').submitButton.disabled = false; 

} 

、ユーザーがファイルを選択するとき、それはfalseにアップロードボタンのdisabled属性を確認する必要があります。

私はここで、onclickに変更する必要がありますが、ユーザーがアップロードするファイルを選択してからonclickが解雇されなければならないため、できません。

EDIT:getRootNodeだけでsupported by Chrome and Operaこれまでであることが表示されますので、

Object doesn't support property or method 'getRootNode' 
+0

、それが表示されているどのようなエラー? – Shubham

+0

エラーはありません。ボタンはちょうどずれています。私がデバッガを使って何が起きているのかをチェックすると、JS関数が呼び出されないことがわかります。 – Papple

+0

私は実際にコンソールにこのエラーがあります: 'オブジェクトはプロパティまたはメソッド 'getRootNode'をサポートしていません – Papple

答えて

1

OK:私は実際にこのエラーを持って起こります。

はそれがIE、ChromeとFFで動作しますが、実行する(非常に)汚い方法を見つけた:

elem.parentElement.parentElement.parentElement.parentElement.parentElement.getElementsByTagName('button').submitButton; 
関連する問題