私はこれに何日も費やしましたが、本当にばかげていると感じています。私は、自分の URL でローカルで試してみるとうまくいかないデモやサンプルに取り組んできました。結果をjsonで返すWebサービスがあり、基本的にdojoを使用してそれを呼び出そうとしているだけで、今のところ結果を表示するだけです。Google 検索の例を取り上げ、URL とパラメーターを置き換えただけです。おそらく、私はまだ基本を理解していないので: 正しい?今、コールバックパラメータは何ですか? これは Web サービスで呼び出されている関数ですか? 私の Web サービス URL は次のとおりです: http://xxx.xxx.x.xxx/WcfServices/WcfInstance/Service1.svc/RetrievData?query=Word
次のコードを使用すると、何も表示されません。
function searchGoogle() {
// Look up the node we'll stick the text under.
var targetNode = dojo.byId("rules");
// The parameters to pass to xhrGet, the url, how to handle it, and the callbacks.
var jsonpArgs = {
url: "http://xxx.xxx.x.xxx/WcfServices/WcfInstance/Service1.svc/RetrieveData?",
callbackParamName: "callback",
content: {
query:"dojowords"
},
load: function (data) {
// Set the data from the search into the viewbox in nicely formatted JSON
targetNode.innerHTML = "<pre>" + dojo.toJson(data, true) + "</pre>";
},
error: function (error) {
targetNode.innerHTML = "An unexpected error occurred: " + error;
}
};
dojo.io.script.get(jsonpArgs);
}
dojo.ready(searchGoogle);
Web サービスの結果は次のようになります。
"{\"rules\":[{\"value\":\"AllState\"},
{\"value\":\"Cidade de Goa beach\"},{\"value\":\"Euro 2012\"},
{\"value\":\"Euro2012\"},{\"value\":\"European&Championship\"},
{\"value\":\"Holiday Inn Resort\"},
{\"value\":\"Holiday Inn Resort goa\"},
{\"value\":\"Hotel Goa\"},{\"value\":\"Hyatt Goa\"},{\"value\":\"I buy car\"},...
この部分が正しければ、少なくとも、データグリッドまたはチャートにバインドできるデータがあることがわかります。