0

KnockOutJSは初めてです。オンラインサンプルを使用しようとしていますが、htmlから次のスクリプトを呼び出さないと、問題なく動作し、期待される結果が表示されます。ただし、後でブラウザにesriマップを表示するには、このスクリプトを使用する必要があります。以下のスクリプトのコメントを外すと、機能しません。誰かが私の問題を解決するのを手伝ってくれたら幸いです。

<script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?   v=3.0"/> 

これが私のコードです

<!DOCTYPE html >
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"/>
<title>Imagery</title>
<link rel="stylesheet" type="text/css"     href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.0/js/dojo/dijit/themes/claro/claro.c     ss">
 <style type="text/css">
  html, body { height: 100%; width: 100%; margin: 0; padding: 0; }
  #map{padding:0;}
</style>
</head>
<body>
<p data-bind="text: firstName"></p>
<p data-bind="text: lastName"></p>

<input type="text" data-bind="value: firstName" />
<input type="text" data-bind="value: lastName" />
<ul data-bind="foreach: items">
    <li><span data-bind="text:firstName"></span></li>
    <li><span data-bind="text:lastName"></span></li>
</ul>
  <ul data-bind="foreach: items">
    <li data-bind="text:name()"></li>

</ul>
</body>
 <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?     v=3.0"></script> <!--if I comment this line, it works-->
<script type="text/javascript" src="Scripts/knockout-2.1.0.js"></script>
<script type="text/javascript">
   var MyViewModel = function () {
       var self = this;

       self.firstName = ko.observable("Sravan");
       self.lastName = ko.observable("Kumar");

       self.items = ko.observableArray([
           { firstName: "A", lastName: "B", name: ko.computed = function () { return "Hello"; }},
           { firstName: "AA", lastName: "BB", name: ko.computed = function () { return "World"; } }
       ])
    };
   var viewModel = new MyViewModel();
   ko.applyBindings(viewModel);
 </script>

</html>
4

1 に答える 1

1

スクリプトを含める順序を逆にすると、コードが機能します。

<script type="text/javascript" src="Scripts/knockout-2.1.0.js"></script>
<script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?     v=3.0"></script> <!--if I comment this line, it works-->

問題は、esri スクリプトが XMLHttpRequestException エラーをスローし、ページの残りの部分で問題が発生することです。

順序を逆にすると、ko バインディングは機能しますが、Chrome は引き続き XMLHttpRequestException をスローします。問題は次のとおりです。ローカル Web サーバーではなく、ファイル システムからコードを実行しています。

http://forums.arcgis.com/threads/61584-Sample-scripts-no-longer-work-since-upgrade-to-v3.0-of-the-API

于 2012-07-14T09:11:11.950 に答える