选择时更改事件触发问题

时间:2013-06-05 15:51:49

标签: jquery

我发生了一些奇怪的事情。我正在尝试在选择选项时触发事件。现在我正在使用alert()进行测试,但除非选中其中一个收音机和/或复选框,否则它不起作用。谁能让我知道发生了什么?

有问题的选项组是“卧室”

可在此处找到一个示例:bvp.dmediastudios.com/v3 /

jQuery

    if ($('input').is(':checked')) {

        // parent(1) = #harwidget, parent(2) = #homefinderform, parent(3) .frmRow - find .frmLabel
        $(this).parent().parent().parent().find('.frmLabel').addClass('frmLabelChecked');

        //$(this).parent().parent().parent().find('.frmInput').addClass('frmLabelCheckedInput');

    }

    // property type options

    $('#divBuyType').on('click', 'input:checkbox', function () {
        $(this).parent().parent().parent().parent().find('.frmLabel').toggleClass('frmLabelChecked', this.checked);
    });

    // select options w/ TWO select fields (ie listing price, square feet and year built)

    $('select[name=BEDROOM_NUM]').on('change', function() {
        alert('dedfdfd');
    })

1 个答案:

答案 0 :(得分:1)

在您的代码部分为$('input').click(function () {之前,您错过了所显示代码的重要部分,这意味着每次单击输入时都应用事件处理程序($('select[name=BEDROOM_NUM]').on('change', function())。

如果您发送垃圾邮件,请单击复选框,然后尝试更改卧室金额,您会发现有多个警报。这是因为您为每次鼠标点击绑定它。尝试移动

 $('select[name=BEDROOM_NUM]').on('change', function() {
   alert('dedfdfd');
 })

$('input').click(function () {

之外