1

私のページのddlが変更されたときに実行されるこのコード行があります-

location.href = '@Url.Action("Edit", "Page", new { UserId = (string)null })/' + '@ViewBag.userId' + '?status=' + '@ViewBag.status' + '&pageNo=@ViewBag.PageNo';

リンクは & だけで正常に機能していましたが、マークアップ検証ツール http://validator.w3.org/check&ampを確認したところ、& を;に置き換えることが提案されました。上記のコード行でそうしました。ただし、ddl を変更する&と、文字通り URL に表示され、ページが正しく機能しません (ddl によってフィルタリングされるため)。

<script type="text/javascript">
$(document).ready(function () {
 $(".ddl").change(function () { changePage(); });

 }); 

    function changePage() {
        location.href = '@Url.Action("Edit", "Page", new { UserId = (string)null })/' + '@ViewBag.userId' + '?status=' + '@ViewBag.status' + '&amp;pageNo=@ViewBag.PageNo';
}

</script>

誰かが私が間違っていることを教えてもらえますか?

4

2 に答える 2

2

私が考えることができる最も簡単な方法の 1 つは、JavaScript コードを外部の JavaScript に入れ、w3c 検証を再度実行することです。

于 2011-11-11T16:29:25.857 に答える
1

基本的な問題は、XHTML を次のように提供して使用していることです。text/html

ドキュメントが XML として解析されている場合は、スクリプト要素内で&asを表す必要があり&amp;ますが、ドキュメントが HTML であると主張しているため、それを行うことはできません。

互換性ガイドラインを参照してください。

  • JS を外部ファイルに保存する
  • CDATA マーカーでラップする
  • XHTML の代わりに HTML を使用する
于 2011-11-11T16:38:38.733 に答える