私はブートストラップモーダルを開くスクリプトに取り組んでいます。次に、「確かに」ボタンで選択を確認し、次にそのpost()を確認し、それが正常に送信された場合、コメントフォームをモーダルボディにロードします。コメントフォームはパーシャルに格納されており、コメントはwysihtml5を使用しています。これが私の現在のコードです:
modal_div.find('.confirm-o-c').click(function(ee){
$.post(
lnk.attr('href'),
function(data, textStatus, jqxhr){
console.log(data);
var lbl = lnk.parent().prev().children('.label').first();
lbl.fadeOut('fast');
lbl.attr('class','label label-'+data.status)
.text(data.text)
.fadeIn('fast');
var newlnk = $('<a href="#">newlink</a>');
newlnk.attr('href',lnk.attr('href').replace('complete','revert'));
lnk.parent().append(newlnk);
lnk.remove();
var status = data.status;
var id = data.object.id;
var objective_id = data.object.objective_id;
if(status === 'submitted'){
modal.fadeOut('fast', function(){
modal.load('<?=URL::to_action('objectives/completion_comment/')?>/'+id, function(){
modal.fadeIn('fast');
$('#message-'+objective_id).wysihtml5();
});
$('#confirm-objective-complete').addClass('modal-large');
$('#submit-comment').css("display", "inline-block");
oldfooterbtn.css("display", "none");
footerbtncancel.css("display", "none");
footerbtnclose.css("display", "none");
confirmtext.css("display", "none");
});
};
});
// objectives.init();
ee.preventDefault();
問題
確認後、投稿はうまく機能し、送信されたものを返しますが、コメントフォームがリードされると、コンソールは8回のように発生していることを示し、このエラーが発生します
TypeError: f.contentWindow is null
私は次のようなものを見てきました:
$(this).one('load', function () {
console.log("load complete");
});'
しかし、私のように URL を使用して実装する方法がわかりませんでした。どんな助けでも大歓迎です。
私のコードを見ていただきありがとうございます。