javascript
  • jquery
  • ajax
  • 2017-04-09 5 views 0 likes 
    0

    私は$ .ajax関数でjSON配列を操作していますが、私はその構文と混同しています。エラーがあり、それを見つけることができません。jQuery.ajax funcitonのhtml構文エラー?

    if(value['newVar'] === 1) 
           { 
           $productContainer.append("<div id='productBox' class='grid_3'>\n\ 
          <a href='product.jsp?id="+value['id']+"'><img src='"+value["image"]+"'/></a><br/>\n\ 
          <a href='product.jsp?id="+value['id']+"'><span class='black'>"+value['name']+"</span></a><br/>\n\ 
          <span class='black'>By "+value['company']+"</span><br/><span class='red'>RS."+value['price']+"</span>\n\ 
          <br/><br/><a href='#' onclick="foo(this)" pid="+value['id']+">REMOVE</a></div>"); 
    
          } 
    

    エラーがあればブロックで、それは声明Uncaught SyntaxError: missing) after argument listを逃すと言うRS."+value['price']+"</span>\n\後の4行です。私はエラーが私が書いた方法であると思う。onclick="foo(this)"

    何か助けがありますか?

    +0

    複数行を行う場合は、各行を連結します。 – Roljhon

    +0

    @Roljhonどうですか? '\ n \'私はこのオペレータが私のためにそれをやっていると思います – PVP

    +0

    ああ申し訳ありません、それに気付かなかった:) – Roljhon

    答えて

    1

    二重引用符を一重引用符で置き換えます。あなたは二重引用符で文字列を終了すると、構文エラーを作成している:onclick="foo(this)"

    ...<a href='#' onclick='foo(this)' pid='"+value['id']+"'> 
    
    0

    エラーが最後の行に引用誤用によるものでした。
    また、二重引用符がありません。
    (実際のエラーは発生していませんが、生成されたHTMLには後でエラーが発生します)。

    追加する文字列ラッパーとして引用符を使用できます。
    もう1つは文字列の内側です。

    しかし、それらを「ミキシング」しないように注意する必要があります。 1つは文字列ラッパーで、もう1つは文字列の一部です。

    if(value['newVar'] === 1){ 
        $productContainer.append("<div id='productBox' class='grid_3'>\n"+ 
              "<a href='product.jsp?id='" +value['id']+ "'><img src='" +value["image"]+ "'/></a><br/>\n"+ 
              "<a href='product.jsp?id='" +value['id']+ "'><span class='black'>" +value['name']+ "</span></a><br/>\n"+ 
              "<span class='black'>By " +value['company']+ "</span><br/><span class='red'>RS." +value['price']+ "</span>\n"+ 
              "<br/><br/><a href='#' onclick='foo(this)' pid=" +value['id']+ ">REMOVE</a></div>"); 
    
    } 
    

    トリック:

    • +記号を使用して行を連結します。
      文字列内に複数のタブとスペースが含まれないようにします。
      各行の末尾に、スラッシュ\よりも良いプラクティスです。
    • 上記のように、変数を視覚的により明瞭に見えるようにしてください。
      また、引用符の欠落や誤用のチェックにも役立ちます。
    関連する問題