私の Windows ガジェット コードでは、SettingsClosing(event) で jQuery を使用して ajax (POST) 呼び出しを行いました。Fiddlerを介して ajax 呼び出しの実行を監視します。Ajax 呼び出しは目的の結果を返していますが、成功コールバック ajax をトリガーしていません。メイン ビューの OnPageLoad() イベントで同じコードを試してみましたが、正常に動作しています。私のコードは次のようなものです
function Login(username, password) {
var url = "http://example.com/Auth.php";
var data = { pusername: username, ppassword: password };
jQuery.support.cors = true;
$.ajax({
type: "POST"
, dataType: "json"
, url: url, data: data
, success: function (refresh_token) {
System.Gadget.Settings.write("success", "true");
System.Gadget.Settings.write("dd", refresh_token);
var tok = refresh_token['refreshtoken'];
var name = refresh_token['name'];
System.Gadget.Settings.write("name", name);
System.Gadget.Settings.write("refreshtoken", tok);
}
, error: function (XMLHttpRequest, textStatus, errorThrown) {
System.Gadget.Settings.write("login_error", errorThrown);
System.Gadget.Settings.write("login_STATUS", textStatus);
}
});
}
function SettingsClosing(event)
{
//use this question to now if setting was closed with OK button
if (event.closeAction == event.Action.commit)
{
var username = $('#txtpUsername').val();
var password = $('#txtpPassword').val();
Login(username, password);
}
}
どんな助けでも大歓迎です。