jQuery没有处理表单内的任何元素

时间:2016-02-15 13:15:40

标签: javascript jquery html forms

以下是表单标记内的HTML代码:

<section id="mp-cart-after" class="mp_cart_after">
            <div id="mp-checkout-payment-form">
            <h3 class="mp_sub_title">Payment</h3>

这是JS:

jQuery( document ).ready(function() {
    jQuery('.mp_sub_title').click(function(e){
        e.preventDefault();
        jQuery('.mp_sub_title').hide();
    });

});

我已经在这个表单之外的元素上测试了jQuery并且它可以工作。 `

2 个答案:

答案 0 :(得分:0)

也许你忘记了一些结束标签。然而,这有效:

<form>
            <section id="mp-cart-after" class="mp_cart_after"></section>
            <div id="mp-checkout-payment-form">
            <h3 class="mp_sub_title">Payment</h3></div>
</form>

 $(document).ready(function () {

        $(".mp_sub_title").click(
            function (e) {
               e.preventDefault();
               jQuery('.mp_sub_title').hide();
            }            
        );
    });

这是一个有效的jsfiddle:Working Example

答案 1 :(得分:0)

由于表格是动态生成的,您需要使用委托的.on('click'

像这样:

jQuery( document ).ready(function() {
    jQuery('body').on('click', '.mp_sub_title', function(e){
        e.preventDefault();
        jQuery('.mp_sub_title').hide();
    });
});