Avatar billede pepperfar Nybegynder
19. juli 2007 - 10:40 Der er 7 kommentarer

Pop-up alert med to valg muligheder?

Hej,

Jeg har nedenstående script som jeg skal have lavet lidt om på. Det er en popup-alert som fremkommer når kunden har lagt en varer i kurven og fortæller hvad og stk som er blevet tilføjet. Jeg skal have lavet om på det så brugeren ikke bare skal trykke "ok" men kan vælge imellem:
- Hvis kunden trykker "Ja", bliver vareren lagt i kurven og browseren går til indkøbskurven/tjek ud.
- Hvis kunden trykker "Nej" bliver vareren lagt i kurven men bliver på samme produkt side og vælger derved at shoppe videre.

Er dette muligt, og hvordan ville javascriptet så se ud?



<script type="text/javascript">
function toucan_alert()
{
alert(document.addtobasket.quan.value + " x {TXT_PRODTITLE}" + '\n' + "Added to your shopping cart")
}
</script>

<a href="java script:submitDoc('addtobasket');" class="txtButton">{BTN_ADDBASKET}</a>
Avatar billede kinderaeg Nybegynder
19. juli 2007 - 10:51 #1
if(confirm("Spørgsmål")) {
  //tilføj vare
} else {
  //tilføj ikke vare
}
Avatar billede mclemens Nybegynder
19. juli 2007 - 10:51 #2
Sådan ?


<html><body>
<script type="text/javascript">
function toucan_alert()
{
if(confirm(document.addtobasket.quan.value + " x {TXT_PRODTITLE}" + '\n' + "Added to your shopping cart\n\nØnsker du at gå til vognen ?"))location.href="http://www.eksperten.dk/spm/788114";
}
</script>
<form name="addtobasket"><input name="quan" value="1"></form>
<a href="java script:toucan_alert('addtobasket');void(0);" class="txtButton">{BTN_ADDBASKET}</a>
</body></html>
Avatar billede pepperfar Nybegynder
19. juli 2007 - 11:03 #3
Oki, det proøver jeg lige, vender tilbage snarest
Avatar billede pepperfar Nybegynder
19. juli 2007 - 11:19 #4
Er det på nogen måde mulig at få den til at først komme frem når vareren faktisk er lagt i kurven? For pt. kommer den med det samme jeg trykker på "Tilføj kurv" og ved langsomme internet opkoblinger, hvis man trykker på "OK", går den direkte i kurven uden at have nået at tilføje produktet. Kan man lave en løsning på dette?
Avatar billede mclemens Nybegynder
19. juli 2007 - 11:28 #5
Ja.

1. Du laver opkaldet til confirm'en efter du har lagt varen i kurven.

2. Hvis det f.eks. er den frame der opdateres kan
du måske starte confirm'en efter onload af framen.

3. Du kan selvfølgelig også køre en setTimeout i opkaldet
til confirmen afhængig af resten af din kode. Dog kan det
betyde at folk venter ubegrundet i en del af timeoutens længde.
Avatar billede pepperfar Nybegynder
19. juli 2007 - 17:54 #6
Mange tak, men hvordan gør jeg dette? Jeg er ikke den store programmør, jeg bruger systemet Cubecart, hvis du kender dette. Min kode på produktsiden ser således ud: hvordan laver jeg så alerten starter efter onload af framen?


<!-- BEGIN: view_prod -->

<div class="boxContent">
    <!-- BEGIN: prod_true -->
    <script type="text/javascript">
function toucan_alert()
{
alert(document.addtobasket.quan.value + " x {TXT_PRODTITLE}" + '\n' + "er tilføjet til din indkøbskurv. Klik øverst i højre hjørne af siden for at gå til betaling.")
}
</script>
    <strong>{LANG_DIR_LOC}</strong> {CURRENT_DIR}
   
    <form action="{CURRENT_URL}" method="post" name="addtobasket" target="_self">
   
    <p class="txtContentTitle"><strong>{TXT_PRODTITLE}</strong></p>
   
    <div style="text-align: center;"><img src="{IMG_SRC}" alt="{TXT_PRODTITLE}"  border="0" /></div>
    <!-- BEGIN: more_images -->
    <div style="text-align: center;"><a href="java script:openPopUp('extra/prodImages.php?productId={PRODUCT_ID}', 'images', 548, 455, 0);" class="txtDefault1">{LANG_MORE_IMAGES}</a></div>
    <!-- END: more_images -->
<div class="txtDefault"><p><strong>{LANG_PRODINFO}</strong><br>{TXT_DESCRIPTION}
    </p>     
   
    <p>
        <strong>{LANG_PRICE}</strong> {TXT_PRICE}
        <span class="txtSale">{TXT_SALE_PRICE}</span>
    </p>     
   
    <ul>
       
        <li class="bulletLrg"><a class="txtDefault" href="java script:Talk()">Brug for hjælp?</a></li>
        <li class="bulletLrg"><a class="txtDefault" href="index.php?act=taf&amp;productId={PRODUCT_ID}" target="_self">{LANG_TELLFRIEND}?</a></li>
        <li class="bulletLrg"><a class="txtDefault" href="java script:addbookmark();">Tilføj produkt til foretrukne?</a></li>
        </ul>
    <!-- BEGIN: prod_opts -->
    <br />
    <strong>{TXT_PROD_OPTIONS}</strong>
    <table border="0" cellspacing="0" cellpadding="3">
        <!-- BEGIN: repeat_options -->
        <tr>
            <td><strong>{VAL_OPTS_NAME}</strong></td>
            <td>
                <select name="productOptions[]">
                    <!-- BEGIN: repeat_values -->
                    <option value="{VAL_ASSIGN_ID}">
                    {VAL_VALUE_NAME}
                    <!-- BEGIN: repeat_price -->
                    ({VAL_OPT_SIGN}{VAL_OPT_PRICE})
                    <!-- END: repeat_price -->
                    </option>
                    <!-- END: repeat_values -->
                </select>
            </td>
        </tr>
        <!-- END: repeat_options -->
    </table>
    <!-- END: prod_opts -->
    <br />

    <strong>{LANG_PRODCODE}</strong> {TXT_PRODCODE}

    <div>
    {TXT_INSTOCK}<span class="txtOutOfStock"> {TXT_OUTOFSTOCK} </span>
    <!--BEGIN: MADCITYMOD-->
    <br />
    <br />   
    {BEGIN_TEXTAREA}
    {LICENSE_DESCRIPTION}
    {END_TEXTAREA}
    <br />
    <!-- BEGIN: buy_btn -->
    <div class="textbox3" style="position: relative; text-align: center;">{LANG_QUAN}
    <input name="quan" type="text" value="1" size="2" class="textboxquan" style="padding: 1px;" />
    {SUBMIT_LICENSE}
</div>
    <!-- END: buy_btn -->
    <!--END: MADCITYMOD-->   
    </div> 
<input type="hidden" name="add" value="{PRODUCT_ID}" />
</form><br><br>
<!-- BEGIN: similar -->

    <b>Kunder som købte dette produkt købte også:</b>
    <div class="textbox3"><div align="left">
    <table border="0" cellspacing="1" cellpadding="2">
    <!-- BEGIN: repeat -->
    <tr>
        <td align="left"><a href="index.php?act=viewProd&amp;productId={SIM_PRODUCT_ID}" target="_self"><img src="{SIM_SRC_PROD_THUMB}" alt="{SIM_TXT_TITLE}" border="0" /></a></td>
        <td align="center"><a href="index.php?act=viewProd&amp;productId={SIM_PRODUCT_ID}" target="_self" class="txtDefault"><strong>{SIM_TXT_TITLE}</strong></a></td>
        <td align="right">{SIM_TXT_PRICE}<div class="txtSale">{SIM_TXT_SALE_PRICE}</div></td>
    </tr>
    <!-- END: repeat -->
    </table>
    </div>
</div>
<!-- END: similar -->
<!-- END: prod_true -->
<!-- BEGIN: prod_false -->
<p>{LANG_PRODUCT_EXPIRED}</p>
<!-- END: prod_false -->
</div></div>

<!-- END: view_prod -->
Avatar billede mclemens Nybegynder
19. juli 2007 - 18:25 #7
Det ser ikke ud til at cubecart bruger frames
og købesystemet baserer sig på en form post.
... Der skal derfor noget serverside kode ind
samtidig da javascript ikke kan aflæse post.

Med andre ord 19/07-2007 10:51:54 skal gøres
betinget så det kun outputtes på den nyopdaterede
side hvor varen er blevet lagt i kurven og
så ikke være indesluttet af en funktion.

Måske vil dette virke:
(script delen er rykket fra
toppen og ned imod bunden).
Bemærk: Jeg ved ikke noget om cubecart.

...

<!-- END: similar -->
<script type="text/javascript">
function toucan_alert()
{
// tom
}
<?php if(isset($_POST['add'])){ echo"if(confirm(".$_POST['quan'];?> + " x {TXT_PRODTITLE}" + '\n' + "Added to your shopping cart\n\nDo you wish to jump over to the cart ?"))location.href="http://www.eksperten.dk/spm/788114";<?php } ?>
</script>
<!-- END: prod_true -->
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester