繁体   English   中英

在Foundation 5上创建和使用自定义模式

[英]Creating and using custom pattern on Foundation 5

我正在尝试在Foundation 5中使用自定义模式。这是我的代码

<head>
    <meta charset="utf-8"> 
    <script src="js/vendor/modernizr.js"></script> 
</head> 
<body>
        <form name="input" action="validate.php" method="post" data-abide>
                        <fieldset>
                            <legend>Todos os campos são necessários</legend>
                            <div class="row">
                                <div class="small-3 columns">
                                    <label for="right-label" class="right inline">Dogecoin Adress</label>
                                </div>
                                <div class="small-9 columns">
                                    <input name="wallet" type="text" pattern="wallet" class="small-12 columns" required />
                                    <small class="error">Invalid Adress</small>
                                </div>
                            </div>
                        </fieldset>
                    </form>

    <script src="js/vendor/jquery.js"></script> 
<script src="js/foundation.min.js"></script>
<script src="js/foundation/foundation.abide.js"></script>
    <script> 
        $(document).foundation(
        {
            abide:{
                patterns:{
                    wallet: /^D[A-Za-z0-9]{33}$/
                }
            }
        }
        );
    </script> 
</body>

为什么当我介绍一个有效的地址(例如:DRzKV3Vr235MTuGuVZ4eHjZfmy4TsymDX4)时仍然说我的地址无效?

我进行了以下更改:

  1. 我确保将类型设置为text / javascript(某些浏览器可能需要这样做)。
  2. 我在正则表达式模式的第一个D字符之后添加了{1}。
  3. 使用了更新的正则表达式模式,该模式应确保所有地址字符均对Base58地址有效。

编辑:固定的HTML显示

    <head>
<meta charset="utf-8"> 
<script type="text/javascript" src="js/vendor/modernizr.js"></script> 
</head> 
<body>
        <form name="input" action="validate.php" method="post" data-abide>
                        <fieldset>
                            <legend>Todos os campos são necessários</legend>
                            <div class="row">
                                <div class="small-3 columns">
                                    <label for="right-label" class="right inline">Dogecoin Adress</label>
                                </div>
                                <div class="small-9 columns">
                                    <input name="wallet" type="text" pattern="wallet" class="small-12 columns" required />
                                    <small class="error">Invalid Adress</small>
                                </div>
                            </div>
                        </fieldset>
                    </form>

    <script type="text/javascript" src="js/vendor/jquery.js"></script> 
    <script type="text/javascript" src="js/foundation.min.js"></script>
    <script type="text/javascript" src="js/foundation/foundation.abide.js"></script>
    <script type="text/javascript"> 
        $(document).foundation(
        {
            abide:{
                patterns:{
                    wallet: /^D{1}[5-9A-HJ-NP-U]{1}[1-9A-HJ-NP-Za-km-z]{32}$/
                }
            }
        }
        );
    </script> 
</body>

或者,您可以尝试使用jQuery的extend方法设置模式的以下方法:

    <head>
<meta charset="utf-8"> 
<script type="text/javascript" src="js/vendor/modernizr.js"></script> 
</head> 
<body>
        <form name="input" action="validate.php" method="post" data-abide>
                        <fieldset>
                            <legend>Todos os campos são necessários</legend>
                            <div class="row">
                                <div class="small-3 columns">
                                    <label for="right-label" class="right inline">Dogecoin Adress</label>
                                </div>
                                <div class="small-9 columns">
                                    <input name="wallet" type="text" pattern="wallet" class="small-12 columns" required />
                                    <small class="error">Invalid Adress</small>
                                </div>
                            </div>
                        </fieldset>
                    </form>

    <script type="text/javascript" src="js/vendor/jquery.js"></script> 
    <script type="text/javascript" src="js/foundation.min.js"></script>
    <script type="text/javascript" src="js/foundation/foundation.abide.js"></script>
    <script type="text/javascript"> 
        jQuery.extend(window.Foundation.libs.abide.settings.patterns, {
            wallet: /^D{1}[5-9A-HJ-NP-U]{1}[1-9A-HJ-NP-Za-km-z]{32}$/
        });
    </script> 
</body>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM