1

Force.com の visualforce ページに SimpleScriptJS v3 を統合しようとしています。Salesforce から製品をクエリし、SimpleCartJS クラス パラメータを使用して製品を表示できます。製品はカートに正しく追加され、空、削除、増分、減分リンクは完全に機能します。PayPal、Googleなどにチェックアウトする必要はありません。必要なのは、ユーザーが「ckeckout」ボタンをクリックしたときに、セールスフォースで直接オブジェクトにレコードを作成することです。そのため、繰り返して使用するには、カート内のすべてのアイテムを取得する必要がありますSalesforce でレコードを作成するための情報。

これは私のvisualforceページです:

<script src="{!$Resource.ShoppingCart_SimpleCart_JS}" type="text/javascript"/>
<script src="{!$Resource.ShoppingCart_JQuery_JS}" type="text/javascript"/>  

<apex:pageBlock >

    <apex:repeat value="{!existingProducts}" var="wrapper">
        <apex:outputPanel layout="block" style="float:left;padding-top:10px;padding-left:10px" styleClass="simpleCart_shelfItem">
            <apex:image value="/servlet/servlet.FileDownload?file={!wrapper.imageId}" width="150" height="150"/>
            <apex:outputPanel layout="block" style="text-align:center">
                <apex:outputText value="{!wrapper.product.Name}" styleClass="item_name"/><br/>
                <apex:outputText value="Price: ${!wrapper.price}" styleClass="item_price"/><br/>
                <apex:outputLink value="javascript:;" styleClass="item_add">Add to Cart</apex:outputLink><br/><br/>
            </apex:outputPanel>
        </apex:outputPanel>
    </apex:repeat>


    <apex:outputPanel layout="block" style="float:right;padding-top:10px;padding-right:10px">
        <apex:outputPanel styleClass="simpleCart_quantity"></apex:outputPanel>
        items - 
        <apex:outputPanel styleClass="simpleCart_total"></apex:outputPanel>

        <apex:outputPanel styleClass="simpleCart_items" layout="block"></apex:outputPanel>

        <apex:outputLink value="javascript:;" styleClass="simpleCart_checkout">Checkout </apex:outputLink>
        <apex:outputLink value="javascript:;" styleClass="simpleCart_empty"> Empty Cart</apex:outputLink>
    </apex:outputPanel>

    <apex:pageBlockButtons >
        <apex:commandButton value="Checkout" action="{!checkout}"/>
    </apex:pageBlockButtons>            
</apex:pageBlock>

私が言ったように、アイテムはカートに正しく追加されて表示されます (styleClass="simpleCart_items" プロパティを持つ出力パネル)。

問題は、すべてのカート項目を配列または何かに入れて、反復して使用するにはどうすればよいかということです。

誰でもこれについて私を助けることができますか?

どうもありがとう!!!

よろしく!

4

1 に答える 1

2

SimpleCart オブジェクトを使用して項目配列を取得できます。

simpleCart.each(function(item){
    console.log( item.get('quantity') + ' x ' + item.get('name') );
});

または、.sendForm メソッドを使用してフォームをカスタム スクリプトに送信することもできます。

于 2013-05-03T16:43:34.090 に答える