Javascript 使用Ajax HTML结构选择特定选项时的jQuery事件

Javascript 使用Ajax HTML结构选择特定选项时的jQuery事件,javascript,jquery,html,ajax,select,Javascript,Jquery,Html,Ajax,Select,我希望在选择特定选项时创建jQuery事件。我很熟悉如何使用一般的下拉结构来实现这一点,但我的是一个不寻常的结构,它不起作用: HTML 上述情况是,当您选择另一个国家/地区时,选定的=选定的属性不会改变。唯一需要更改的是select2-billing\u country-container中的属性title。当您更改选择时,还涉及Ajax 我错过了什么,或者如何才能更好 更新 上面的jQuery大体上是正确的,它与其他jQuery函数有一些冲突。唯一不同的是,在页面加载时,下拉结构使用了常规元

我希望在选择特定选项时创建jQuery事件。我很熟悉如何使用一般的下拉结构来实现这一点,但我的是一个不寻常的结构,它不起作用:

HTML

上述情况是,当您选择另一个国家/地区时,选定的=选定的属性不会改变。唯一需要更改的是select2-billing\u country-container中的属性title。当您更改选择时,还涉及Ajax

我错过了什么,或者如何才能更好

更新 上面的jQuery大体上是正确的,它与其他jQuery函数有一些冲突。唯一不同的是,在页面加载时,下拉结构使用了常规元素,但当选择不同的选项时,它会变成Ajax请求,使用。因此,上面和道格的回答给出了一个完整的结果。

更新

在页面加载时,将查看选择菜单,而不是HTML结构,因此在页面加载时,您需要有以下代码:

    if( jQuery('#billing_country').val() == 'NL'){
        jQuery('#billing_address_2_field').css('display', 'none');
    }

您现在可以将更改事件保留在页面上。

id为billing\u country的元素在哪里?我看到的只是一个国家的ID。@DougF是的,我改进了它。但这不是问题所在,我对原始html做了一点修改。问题是,您没有提出任何类型的Ajax请求,因此您的ajaxComplete下的代码不会执行。另外,您没有包含元素类的div,因此无论如何都不会看到任何情况发生。我查看了签出页面并使用jQuerydiv.element查找了它,但它没有返回任何内容。请在源代码控制台的第17行中查找实际元素,JS文件名为checkout-page.JS您能看看原始页面吗?因为这就是我所做的,除了不使用函数HIDEADDRESTwo。我只是把它完全编码了。在页面加载时,当预先选择国家时,它不起作用。@Demian是的,我明白你的意思。我已经更新了答案。是的,这么小的细节,成功了。谢谢你的时间和努力。非常感谢。总是很小的细节,不是吗很高兴能帮上忙,祝你今天休息得愉快。
jQuery('#billing_country').change(function(){
    jQuery(document).ajaxComplete( function() {
        if( jQuery('#select2-billing_country-container').attr('title') == 'Netherlands'){
            jQuery('#billing_address_2_field').addClass('hide'); // random event
        }
    });
});
    if( jQuery('#billing_country').val() == 'NL'){
        jQuery('#billing_address_2_field').css('display', 'none');
    }