2016-09-07 7 views
0

失敗したAJAX要求は(常に隠さDIV)の後に、私は次のコードを使用してdivの通知を表示する問題を抱えています。ただしdivは常に非表示になります。ネットワークエラーが発生していないときに他の場所でshowAlert()メソッドを使用すると正常に動作しています。表示のdiv

function showAlert(parentDiv, options) { 
    $alertDiv = $('<div></div>') 
     .show() 
     .prop({ id : 'alert'}) 
     .addClass('alert-' + options.type) 
     .append($('<button></button') 
      .attr({ type: 'button'}) 
      .addClass('close') 
      .data('dismiss', 'alert') 
      .html('X') 
      .on('click', function() { 
       $(this).parent().remove(); 
      }) 
     ); 

    if("title" in options) { 
     $alertDiv.append($('<h4></h4>') 
      .html(options.title) 
     ); 
    } 

    $alertDiv.append($('<p></p>') 
     .html(options.text) 
    ); 

    $('#' + parentDiv).prepend($alertDiv); 
} 

ブラウザコンソール:ここで起こっていただきました

Failed to load resource      http://192.168.182.130:8080/js/jquery-3.1.0.min.js 
    send          jquery-3.1.0.min.js:4 
    r.extend.ajax        jquery-3.1.0.min.js:4 
    getFromDatabase       utils.js:251 
    (anonymous function)      (index):39 
    r.event.dispatch       jquery-3.1.0.min.js:3 
    q.handle 

任意のアイデア?

ありがとうございます!

+0

'$( '#' + parentDiv).prepend($ alertDiv);' ...このコンテキストでは 'parentDiv'とは何ですか?失敗したAJAXコールの後にDOMを検査してみて、あなたのdivをどこかに見つけることができるかどうか確認しましたか? –

+0

@TimBiegeleisen divが挿入されています。 'block'ではなく' style = 'display:none''だけです。これは、ネットワークエラーの後でのみ発生します。 divを挿入すると、それ以外はうまく動作します。 – boindil

答えて

0

うーん...私は私の問題の解決策を見つけました。

しかし、なぜこれが起こっているのかわかりません。

$alertDiv = $('<div style="display: block !important"></div>') 

上記のコードは私のために働きます。ご協力いただきありがとうございます!