0

jqueryをデバッグする方法を学ぼうとしています。入力フィールドを動的に追加するページを作成しようとしました。データは jquery に送信されます。デバッグのためにconsole.log、配列全体を試してみましたが、Firefox で次のエラーが発生しています。

[17:40:27.073] HTML ドキュメントの文字エンコーディングが宣言されていません。ドキュメントに US-ASCII 範囲外の文字が含まれている場合、一部のブラウザー構成では、ドキュメントが文字化けしてレンダリングされます。ページの文字エンコーディングは、ドキュメントまたは転送プロトコルで宣言する必要があります。@ file:///Users/ateevchopra/Desktop/takemehome%20dynamic/TakeMeHome/index.html

私のコードに間違いがある場合、これが何を意味するのか説明してください。私のコードはこちら

HTML:

<!doctype html>
<html>

 <head>
    <title>TakeMeHome</title>

    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
    <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
    <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
    <script type="text/javascript" src="js/jquery-ui-1.8.1.custom.min.js"></script>
    <script type="text/javascript" src="js/main.js"></script>
    <script type='text/javascript' src='js/app.js'></script>

  </head>

  <body>
    <center><form id="details">
      Your Place:<input id="source" type="text"><br><br>
      Friend1:<input id="friend1" type="text"><br><br>
      <div id="friends"></div>
      <div id="button">Add!</div><br><br>

       <input type="submit" value="go">
    </form>
  </body>

</html>

jQuery:

 var j=2;
var friends = [];


$(document).ready(function(){

    $('#button').click(function(){
      if(j<11){
          $('#friends').append('Friend'+j+':<input type="text" id="friend'+j+'"/><br/><br/>'); 
        j++;
      }
     else
      {
     alert("Limit reached");
   }
    });



});


$("form").submit(function(){

    friends[0] = ('#source').val();
    for(var i=1;i<j;i++)
    {
        friends[i] = ('#friends'+i+'').val();
    }

    console.log(friends);
});
4

3 に答える 3

1

このエラーはJavaSCriptとは何の関係もありません。

このようなメタタグを追加すると、<meta charset="UTF-8" />修正する必要があります。

また、Doctype宣言に型があることもわかります。

于 2013-01-19T12:21:48.987 に答える
1

これはJavascriptコードのエラーではありませんが、実際のHTMLマークアップの有効性に関してFirefoxによって発行される一般的な警告です。

metaドキュメントのエンコーディングは、タグ内にタグを付けて宣言する必要がありますheader。たとえば、エンコーディングがUTF-8の場合、次のようになります。

<head>
    ...
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    ...
</head>

DoctypeはHTML5であるため、次のcharset属性を使用することもできます。

<head>
    ...
    <meta charset="UTF-8">
    ...
</head>
于 2013-01-19T12:21:57.953 に答える
1

あなたのコードは完全に機能しています。このコンソールから確認できます 。ログはデバッグに適していますが、デバッグには firebug を使用することをお勧めします。firebug を使用すると、すべての行をデバッグでき、各変数の値を表示することもできます。私はfirefoxでfirebugを使用しています。そのリンクからfirefox用のfirebugをダウンロードできます。

于 2013-01-19T12:34:36.763 に答える