基本函数和if语句在jQuery中不起作用 [英] Basic function and if statement not working in jQuery

查看:169
本文介绍了基本函数和if语句在jQuery中不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的代码:

<button id="addSubject" type="button">+</button> 
    <script>                            
        $('#addSubject').click(function() 
        {
                function optionExists(mySelect, val) 
                {
                    return $("#"+mySelect+" option").filter(function() {
                        return this.value === val;
                    }).length !== 0;
                }

                if (optionExists($('#subjectCategories'), $('#fieldNewSubject').val()))
                {
                    $('#subjectCategories').append("<option value=\"" + $('#fieldNewSubject').val() + "\">" + $('#fieldNewSubject').val() + "</option>");
                    $('#fieldNewSubject').val("");
            });  
    </script>

这是我的疑问:为什么它不起作用?点击按钮后没有任何反应!
我把它放在标题中:

Here's my quetion: Why won't it work? Nothing happens when I click on the button! I did put this in the header:

<script src="js/jquery.ui.button.js"></script> 
<script src="js/jquery-1.8.2.min.js"></script>


推荐答案

如果我猜对了你的意图,这应该做的相同:

If I guessed your intention correctly, this should do the same:

$('#addSubject').click(function () {
  var
    val = $('#fieldNewSubject').val(),
    $select = $('#subjectCategories');

  if ($select.find('option[value="' + val + '"]').length === 0) {
    $('<option>', {
      value: val,
      text: val
    }).appendTo($select);
  }
});

http://jsbin.com/usadoq/1/

这篇关于基本函数和if语句在jQuery中不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆