XML ファイルから JS 関数に読み込んでいる文字列を取得しようとしています。何らかの理由で、Chrome のデバッガーは、Glist の値が文字列ではないと言います。
コード:
<!DOCTYPE html>
<html>
<head id="Head1" runat="server">
<%@ Page Language="C#" %>
<title>GAGEmobile</title>
<link rel="stylesheet" href="/Content/MenuStyle.css" />
<script type="text/javascript" src="Scripts/jQuery.js"></script>
<script type="text/javascript" src="Scripts/Scripts.js"></script>
</head>
<body id="generalBody" runat="server" dir="rtl">
<form runat="server" id="hidden">
<input type="hidden" runat="server" value='' id="Glist" />
</form>
<%
var reader = new GAGEmobile.Models.ReadXML();
var data = reader.getDataFromXML("https://gagemobile-
demo.servicebus.windows.net/gagemobile/gage/15/sample/david/blah");
this.Glist.Value = data;
%>
<script type="text/javascript">
$(document).ready(function () {
displayGageInfo(String("<%: Glist.Value %>"));
});
</script>
</body>
</html>
GList の文字列は次のとおりです。
"ゲージ番号|C-01001|ゲージ タイプ|キャリパー|ゲージ サイズ|1 |測定単位|インチ|ゲージの説明|アブソリュート エンコーダー内蔵のデジ|保管場所|工具箱|現在の場所|工具箱|ステータス|使用可能|所有者|会社|グループ|Calib グループ|EmailTo|Bobby Mohr|最終校正日|2013 年 3 月 28 日|Calib 期日|2013 年 9 月 28 日|最終 RR 日付|2012 年 9 月 5 日|RR 期日|9/5 /2013|最終メンテナンス日|2013/2/27|メンテナンス期限|2015/2/27|メーカー|ファウラー|モデル番号|FIC-23451|シリアル番号|18732|コメント|校正グループの説明
校正グループは、すべて同時に校正される一連のゲージとして定義されています。上記の Group フィールドを使用して、この値を設定します。これにより、これらのゲージを簡単にフィルタリングして、キャリブレーションのために収集することができます。SCHEDMAINTDUE の説明 また、ユーザー定義フィールドを使用して、SchedMaintDue という新しいフィールドを作成しました。このフィールドを使用すると、スケジュールされたメンテナンス期日を定義して、ゲージのフィルタリングとメンテナンス サイクルの参照に簡単にアクセスできます。」
サーバーコードに文字列がありますが、すべて問題ありません。JS に渡すときに何か問題が発生し、その理由がわかりません。
JS で escape() および toString() 関数を使用してみました。
編集:「displayGageInfo(String("<%: Glist.Value %>"));」でエラーが発生します 認識されないトークンとして
XML を読み取る ASP.NET:
public string getDataFromXML(string url)
{
var xml = new XmlDocument();
xml.Load(url);
return xml.InnerText;
}