2011-01-29 4 views
0

Я использую следующий код, чтобы проверить, выбран ли хотя бы один флажок из моего checkboxlist в asp.net. Я использую jGrowl для создания сообщения, которое работает, но сообщение все еще отображается, если выбор сделан. Есть идеи? Кроме того, story_type является этикетка осина, я использую ниже код, но я не могу получить сообщение jGrowl для отображения ...Проверка JavaScript

var story_type = document.getElementById('story_type').value; 
var agile_list = document.getElementById('agile_factors'); 
var arrayOfCheckBoxes = agile_list.getElementsByTagName("input"); 

for (counter = 0; counter < arrayOfCheckBoxes.length; counter++) { 

    if (arrayOfCheckBoxes[counter].checked) { 

     return true; 

    } else { 

     (function($) { 
     $.jGrowl("Please Choose up to 3 Agile Factors", { theme: 'smoke', closer: true }); 
     })(jQuery); 

     return false; 
    } 

} 

if (story_type == "[SELECT TYPE]") { 
    (function($) { 
     $.jGrowl("Please Select Story Type", { theme: 'smoke', sticky: true, closer: true }) 
     return false; 

    })(jQuery); 

    return true; 
} 
+0

Есть флажки только для "элементов ввода" на странице? – rcravens

ответ

1

Поскольку у вас есть JQuery вы можете сделать это, чтобы упростить ваш код немного :

<div id="options"> 
     <input type="checkbox" name="opt1" /> Option 1 
     <input type="checkbox" name="opt2" /> Option 2 
     <input type="checkbox" name="opt3" /> Option 3 
     <input type="checkbox" name="opt4" /> Option 4 
    </div> 
    <div> 
     <a href="#" id="validate">validate</a> 
    </div> 
    <script type="text/javascript"> 
    ;(function() { 

     $("#validate").click(function() { 
      validateInputs(); 
     }); 


     function validateInputs() { 
      alert($("#options input:checked").length + " checked"); 
     } 
    })(); 

</script> 

Здесь приведено jsFiddle из приведенного выше кода; http://jsfiddle.net/rvXHG/

+0

Именно это. Является ли это опечаткой на строке '; (function() {...' - ';' должен быть долларом '' '? – 5arx