webForumDet fria alternativet

Verifiera val i drop-down...

4 svar · 377 visningar · startad av adnoctum

adnoctumMedlem sedan jan. 200439 inlägg
#1

Hejsan !

Jag håller på med en enkel shop, med PayPal betalning.

Till varje produkt har man två val i drop-down listor (storlek & färg). Sedan klickar man på en knapp för att köpa.

Men, som det är nu så kan man klicka på knappen för att köpa utan att välja någon storlek eller färg.

<form target="paypal" action="https://www.paypal.com/cgi-bin/webscr" method="post">
  <table align="center" cellpadding="3" cellspacing="3">
    <tr> 
      <td> 
        <input type="hidden" name="SIZE" value="SELECT SIZE">
        <select name="SIZE" onChange="load('SIZE')">
          <option value="" selected>Select size</option>
          <option value="Small">Small </option>
          <option value="Medium">Medium </option>
          <option value="Large">Large </option>
        </select>
      </td>
      <td> 
        <input type="hidden" name="COLOR" value="SELECT COLOR">
        <select name="COLOR" onChange="load('COLOR')">
          <option value="" selected>Select color</option>
          <option value="Green">Green</option>
          <option value="Black">Black</option>
        </select>
      </td>
    </tr>
  </table>
  <table width="100%" border="0" cellspacing="3" cellpadding="3">
    <tr> 
      <td> 
        <div align="center"> 
          <input type="submit" name="Submit" value="Submit">
          <input type="hidden" name="add" value="1">
          <input type="hidden" name="cmd" value="_cart">
          <input type="hidden" name="business" value="order@mailadress.com">
          <input type="hidden" name="item_name" value="PRODUKTNAMN">
          <input type="hidden" name="item_number" value="PRODUKTNUMMER">
          <input type="hidden" name="amount" value="PRIS">
          <input type="hidden" name="page_style" value="PayPal">
          <input type="hidden" name="return" value="http://www.SITE.com/">
          <input type="hidden" name="cancel_return" value="http://www.SITE.com/">
          <input type="hidden" name="cn" value="Message / comments">
        </div>
      </td>
    </tr>
  </table>
  <input type="hidden" name="currency_code" value="USD">
  <input type="hidden" name="bn" value="PP-ShopCartBF">
</form>

När man klickar på "submit" knappen såöppnas ett nytt fönster (i första kod raden är länken som öppnas). Jag vill inte att man skall kunna trycka på "submit" knappen (som är en bild i min kod egentligen) förr än man har gjort val i de båda drop-down listorna...

nitro2k01Medlem sedan aug. 20037 630 inlägg
#2

Just i ditt fall borde följande kod funka:

<script type="text/javascript">

function validateForm(th){
	for (var i=0; i<th.elements.length; i++){
		if (/select/i.test(th.elements[i].value)){
			alert("Vänligen fyll i alla fält!");
			return false;
		}
	}
	return true;
}

</script>

<form target="paypal" onsubmit="return validateForm(this);" action="https://www.paypal.com/cgi-bin/webscr" method="post">
...
adnoctumMedlem sedan jan. 200439 inlägg
#3

tackar ! :)

provade just, det funkar så långt att det inte går att skicka, men när man har valt i de båda drop-down listorna så får man fortfarande upp rutan "Vänligen fyll i alla fält!"...

nitro2k01Medlem sedan aug. 20037 630 inlägg
#4
<script type="text/javascript">

function validateForm(th){
	for (var i=0; i<th.elements.length; i++){
		if (/select/i.test(th.elements[i].value) && th.elements[i].type="hidden"){
			alert("Vänligen fyll i alla fält!");
			return false;
		}
	}
	return true;
}

</script>

<form target="paypal" onsubmit="return validateForm(this);" action="https://www.paypal.com/cgi-bin/webscr" method="post">
...

Så där kanske?

adnoctumMedlem sedan jan. 200439 inlägg
#5

tack igen, men nu får jag inte upp nån liten "varningsruta" alls, det nya fönstret öppnas trots att jag inte har gjort nåt val i drop-down listorna...

Genererad på 395 ms · cache AV · v20260730165559-full.f96bc7eb