イベントでサーバー側コードから値を取得し、それを使用してダイアログボックスを作成する必要があるという要件があります.window.onloadで値を取得しようとしましたが、window.onloadがドキュメントの後に呼び出されることがわかりました.準備ができている関数ですが、document.ready関数でその値が必要でした..
私の懸念は、ajax呼び出しを実行してサーバー側から値を取得し、document.ready関数で手動イベントを実行せずにそれを使用できる方法があるということです..
これが私のwindow.onloadコードです..
$(window).load(function() {
$.ajax({
type: 'GET',
url: 'Sites',
dataType: "text",
success: function(data) {
var values = [];
values = data;
values=values.replace('[','');
values=values.replace(']','');
var array = values.split(",");
for (var i in array){
output =output.concat('<input type="checkbox" id="'+array[i]+'" name="'+array[i]+'" value="'+array[i]+'" />'+array[i]+'<br />');
}
console.log(output);
alert(output);
}
});
});
これが私の document.ready 関数コードです。
$(document).ready(function() {
//var windowWidth = (document.documentElement.clientWidth - 100) /0.9;
var chbx="";
chbx=output.toString();
alert(chbx);
var $dialog = $('<div></div>').html("<form id='myform'>" +output + "</form>")
.dialog({
autoOpen: false,
title: 'Select Sites',
buttons: {
"Submit": function() { $('form#myform').submit();},
"Cancel": function() {$(this).dialog("close");}
}
});
ここで、window.loadから取得する必要がある変数出力i document.raedy関数にアクセスしようとしています..しかし、問題が述べたように、常に空になっています
みんな私を助けてください..私はこの分野では非常に初心者です。前もって感謝します//