0

そのため、複数行の html を結合する関数を作成しようとしてきたので、JS 関数を呼び出すと、その html が Web ページに配置されます。これが私が働いた例です:

function buildproduct(prodName, prodID, prodDescription) {
   var data = makeHeader()
   data += "<TABLE style='width:100%' border=1 cellpadding=10>"
   data += "<TR><TD rowspan=3 style='width:30%;text-align:center;vertical-"
   data += "align:middle'>" + makeImage(prodID) + ""
   data += "</TD>"
   data += "<TD>" + makeName(prodName) + "</TD>"
   data += "<TD style='text-align:right'>" + makeID(prodID) + "</TD>"
   data += "</TR>"
   data +="<TR><TD style='text-align:center' colspan=2>" + makeLinkbar(prodID) +  ""
   data += "</TD></TR>"
   data += "<TR><TD colspan=2 >" + makeDescription(prodDescription) + ""
   data += "</TD></TR>"
   data += "</TABLE>"
   data += makeFooter()
   productarea.document.writeln(data)
   productarea.document.close()
}

上記のコードは機能しています。これは私が正しく動作しないように見えるコードです:

function makeLinkbar(prodID) {
    var data = "<form name="_xclick" target="paypal" action=https://www.paypal.com method="post">"
    data += "<input type="hidden" name="cmd" value="_cart">"
    data += "<input type="hidden" name="business" value="nora-alice@paypal.com">"
    data += "<input type="hidden" name="item_name" value="HTML book">"
    data += "<input type="hidden" name="amount" value="24.99">"
    data += "<input type="hidden" name="item_number" value="12345">"
    data += "<input type="image" src=http://www.paypal.com/en_US/i/btn/sc-but-01.gif border="0" name="submit"alt="Make payments with PayPal - it's fast, free             and secure!">"
    data += "<input type="hidden" name="add" value="1">"
    data += "</form>"
    return(data)
    }

この関数でhtmlを適切に出力できない理由はありますか? 実際、まったく機能していません。みんなありがとう!

4

2 に答える 2

7

二重引用符を単一引用符のみに置き換えます。

このような。

data += "<input type='hidden' name='cmd' value='_cart'>"
于 2013-05-08T03:40:08.893 に答える
3

以下のように二重引用符をエスケープする必要があります

var data = "<form name=\"_xclick\" target=\"paypal\" action=https://www.paypal.com method=\"post\">"

または二重引用符を一重引用符に変更します

var data = "<form name='_xclick' target='paypal' action=https://www.paypal.com method='post'>"
于 2013-05-08T03:38:09.823 に答える