開始時に非表示になっているHTMLファイルに警告があります。以下のコード。Bootstrap Alert Divは、最初のAjaxリクエストのキャンセル時に2番目のajaxリクエストに表示されません。
<div class="alert alert-dismissible" role="alert" id="msgdiv" style="margin-bottom:5px;display: none;">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
<span id="emsg"></span>
</div>
は今、私が最初に私が今してまで隠されていたこのdiv要素は、このdiv要素に成功またはエラーのクラスを追加表示し、フォームを送信し、応答に基づいてするAjaxリクエストを送信します。
console.log($("#msgdiv"));
$("#msgdiv").show();
if (result.is_success) {
$("#msgdiv").removeClass("alert-warning");
$("#msgdiv").addClass("alert-success");
} else {
$("#msgdiv").removeClass("alert-success");
$("#msgdiv").addClass("alert-warning");
}
$("#emsg").html(result.message);
ここで最初に応答が返されると、このdivが表示されます。私は十字ボタンをクリックしてdivをキャンセルします。
私はページを更新せずにAjaxを使用して新しい値でフォームを送信し、このdivは表示されません。両方のケースで同じ結果が返されました。 JSコードの両方のシナリオでdiv要素を出力しました。出力は以下のとおりです。
初回:
[div#msgdiv.alert.alert-dismissible, context: document, selector: "#msgdiv"]
2回目:下の画像で
n.fn.init {context: document, selector: "#msgdiv"}
詳細。
なぜこの出来事はありますか?なぜコンソールのログに違いがありますか? HTMLとJSの観点からはどういう意味ですか?
こんにちは。例として示した最初のJSコードは、新しいAjaxレスポンスの後に常に呼び出される関数や何かに属していますか?私たちは、うまくいったケースを再現するために、フィドルまたは実行可能なコードを構築することができます。 –