2013-04-13 13 views
5

mam listy utopić i mam problem ze sprawdzeniem, czy dana wartość została wybrana z listy rozwijanejJak sprawdzić, czy element został wybrany z rozwijanej listy HTML?

Poniżej jest mój HTML kod:

<label class="paylabel" for="cardtype">Card Type:</label> 
<select id="cardtype" name="cards"> 
    <option value="selectcard">--- Please select ---</option> 
    <option value="mastercard">Mastercard</option> 
    <option value="maestro">Maestro</option> 
    <option value="solo">Solo (UK only)</option> 
    <option value="visaelectron">Visa Electron</option> 
    <option value="visadebit">Visa Debit</option> 
</select><br/> 

Poniżej jest mój kod JavaScript:

var card = document.getElementByName("cards")[0].value; 
if (card.value == selectcard) { 
    alert("Please select a card type"); 
} 

Odpowiedz

25

Dobrze brakowało cudzysłów wokół napisu selectcard powinno być "selectcard"

if (card.value == selectcard) 

powinny być

if (card.value == "selectcard") 

Oto pełny kod dla tej

function validate() 
{ 
var ddl = document.getElementById("cardtype"); 
var selectedValue = ddl.options[ddl.selectedIndex].value; 
    if (selectedValue == "selectcard") 
    { 
    alert("Please select a card type"); 
    } 
} 

JS Fiddle Demo

+0

Cóż, twój skrzypek odzyskuje wybrany tekst. To, czego szuka, to to, że użytkownik nie chce wybrać, otrzyma ostrzeżenie, aby wybrać – Mee

+0

@Mee ohh, przepraszamy za niewłaściwe zrozumienie OP. teraz zaktualizowałem swoją odpowiedź. – Sachin

+0

@Sachin Praca bez zarzutu. Ten ".text" wyglądał dla mnie dziwnie lol. Niezłe. +1; D – Mee

0
<label class="paylabel" for="cardtype">Card Type:</label> 
<select id="cardtype" name="cards"> 
<option value="selectcard">--- Please select ---</option> 
<option value="mastercard" selected="selected">Mastercard</option> 
<option value="maestro">Maestro</option> 
<option value="solo">Solo (UK only)</option> 
<option value="visaelectron">Visa Electron</option> 
<option value="visadebit">Visa Debit</option> 
</select><br /> 

<script> 
    var card = document.getElementById("cardtype"); 
    if (card.options[card.selectedIndex].value == 'selectcard') { 
      alert("Please select a card type"); 
      return false; 
    } 
</script> 
2
function check(selId) { 
    var sel = document.getElementById(selId); 
    var dropDown_sel = sel.options[sel.selectedIndex].text; 
    if (dropDown_sel != "none") { 

      state=1; 

    //state is a Global variable initially it is set to 0 
    } 
} 


function checkstatevalue() { 
     if (state==1) { 
      return 1; 
     } 
     return false; 
    } 

i HTML jest na przykład

<form name="droptest" onSubmit="return checkstatevalue()"> 

<select id='Sel1' onchange='check("Sel1");'> 
    <option value='junaid'>Junaid</option> 
    <option value='none'>none</option> 
    <option value='ali'>Ali</option> 
</select> 

</form> 

Teraz, przesyłając formularz, najpierw sprawdź, jaka jest wartość stanu, jeśli wynosi 0, oznacza, że ​​nie wybrano żadnej pozycji.

5
<script> 
var card = document.getElementById("cardtype"); 
if(card.selectedIndex == 0) { 
    alert('select one answer'); 
} 
else { 
    var selectedText = card.options[card.selectedIndex].text; 
    alert(selectedText); 
} 
</script> 
Powiązane problemy