0

私はいくつかのHTMLを追加するためにjqueryを使用している以下のページを持っています。指定されたDIVに入力タグを追加するだけです

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled Document</title>
    <script src="../../jquery-1.10.2.min.js" type="text/javascript" xml:space="preserve"></script>
    <script type="text/javascript" xml:space="preserve">
    var i = 0;
    function test(){
        var totalQuantity = '<input type="number" name="order' + i + '.totalQuantity" />';
        $(".test").append(totalQuantity);
        i++;
    }
    </script>
  </head>
  <body>
    <div class="test"></div>
    <input type="button" onclick="test()" value="Add" />
  </body>
</html>

springを使用してtomcatのサーバーでこれを実行すると、インスペクト要素でjavascriptは次のようになります。

var totalQuantity = '<input type="number" name="order&#39;+i+ &#39;.totalQuantity" />';

すべての ( ' ) 文字はコード(#&39)に置き換えられます。

問題は実際には何ですか?文字 ( ' ) が表示されず、html コードが表示されるのはなぜですか?

この html ファイルを個別に (コンテナーまたはスプリング フレームワークではなく) 開くと、正常に動作するため、これはスプリングの使用に問題がありますか。

4

1 に答える 1

0

これは回避策ですが、javascript を html に挿入する適切な方法だと思います。

JavaScript を外部ファイルに移動して、HTML を前処理しているものはすべて JavaScript に影響を与えないようにします。

于 2013-10-07T15:41:50.303 に答える