如何使用jQuery在keypress'enter'上提交表单?

时间:2016-01-20 19:11:02

标签: php jquery wordpress

如何按键输入以在移动设备和桌面设备中提交我的优惠券代码? 键盘输入不起作用,我必须单击提交按钮,以便优惠券代码适用。我犯了一些错误吗?

JQUERY

$(document).ready(function() {
    testKey();
});
 function testKey() {
        $("#inputbox").keypress(function(event) {
        if (event.which == 13) {
            event.preventDefault();
            $(this).closest("form").submit();
        }
    });
    }

PHP

<form id="testt" action="<?php echo esc_url( WC()->cart->get_cart_url() ); ?>" method="post">

        <?php do_action( 'woocommerce_before_cart_table' ); ?>

            <div class="coupon">

                <?php if ( WC()->cart->coupons_enabled() ) { ?>

                <span for="coupon_code"><?php _e( 'Coupon code:', 'woocommerce' ); ?></span> 

                <div class="input-container">
                    <div class="form-row">
                        <input id="inputbox" class="input" type="text" name="coupon_code" value="" placeholder="<?php esc_attr_e( 'bebrave', 'woocommerce' ); ?>" /> 
                    </div>
                    <input type="submit" class="ds btn" name="apply_coupon" value="<?php esc_attr_e( 'Apply Coupon', 'woocommerce' ); ?>" />

                    <?php do_action( 'woocommerce_cart_coupon' ); ?>
                </div>

                <?php } ?>

                <?php wc_print_notices(); ?>

                <?php do_action( 'woocommerce_cart_actions' ); ?>

                <?php wp_nonce_field( 'woocommerce-cart' ); ?>

            </div>

            <?php do_action( 'woocommerce_after_cart_contents' ); ?>

        <?php do_action( 'woocommerce_after_cart_table' ); ?>

        </form>

2 个答案:

答案 0 :(得分:0)

如果您想使用回车键提交表单,请使用以下内容:

$(document).ready(function() {
  $('#inputbox').keypress(function(e) {
        e.preventDefault();
    if (e.keyCode == 13) {
      $('#testt').submit();
    }
 });
});

要听取按键事件,请执行任何功能。 如果您专注于#inputbox输入,则会调用条件内的逻辑。

修改

这完全奏效。
我为你做了一个小提琴,在你的#inputbox中点击输入你的表单的on-submit事件:

Fiddle

答案 1 :(得分:0)

在文本框中按Enter键时,如何模拟单击提交按钮?尝试像

这样的东西
$("#inputbox").keypress(function(event) {
    if (event.which == 13) {
        event.preventDefault();
        $(this).closest('input[type=submit]').click();
    }
});