结算名字应该是字母的

时间:2016-03-07 19:23:33

标签: php wordpress woocommerce

add_filter('woocommerce_billing_fields','custom_woocommerce_billing_fields');

function custom_woocommerce_billing_fields($ fields)

{

$ fields ['billing_first_name'] ['required'] = false;

返回$ fields;

}

我想要使名字和姓氏只应该是字母。现在它也在接受数字。

非常感谢帮助。我还想限制购物车中的评论文本。

此致

2 个答案:

答案 0 :(得分:0)

$('#billing_first_name').on('input',function(){ 
    var node = $(this);
    node.val(node.val().replace(/[^a-z]/g,'') ); }
);

添加此jQuery将起作用。您也可以为其他字段添加。

答案 1 :(得分:0)

您必须按自定义方法添加字段,然后对字母文本框使用follow脚本:

add_filter('woocommerce_checkout_fields', 'custom_override_checkout_fields');

function custom_override_checkout_fields($fields)
{
$fields['billing']['billing_first_name'] = array(
    'label'     => __('First name', 'woocommerce'),
    'placeholder'   => _x('First name', 'placeholder', 'woocommerce'),
    'required'    => false,
    'clear'       => false,
    'type'        => 'text',
    'class'       => array(
                    'alpha'
   )
);

和billing_last_name相同,

  

使用活动主题函数中的所有脚本.php

实际上,woo-commerce没有给我们这个功能。您必须使用自定义jquery或javascript。这可能会对你有所帮助

您应该在wp_head hook

下调用此脚本
add_action('wp_head', ' alphabet_only ');

function alphabet_only() {
?>
    <script type="text/javascript">
$('.alpha').bind('keyup blur',function(){ 
    var node = $(this);
    node.val(node.val().replace(/[^a-z]/g,'') ); }
);
</script>
<?php
}

那就是它。