亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

js技巧專題篇:關鍵詞過濾和多選限制

这是上一篇密码强度检验的续集,关键词过滤涉及到关键词过滤。虽然关键词过滤大多是由后台来处理,但是前端如果直接处理掉,就会减轻后台的任务,从而降低后台压力。多选限制主要是在分类等可以多选单限制选择个数的情况,例如我们在慕课网上发表文章时,里面的标签可以最多选择3个这种情况。

相关html代码如下:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>js技巧专题篇:关键词过滤和多选限制</title>
</head>
<body>
<textarea name="key1" id="key1" cols="30" rows="10">
    我喜欢做一些有意义的事情,例如分享文章,帮助需要帮助的人,就像大家对性感美女的喜  欢一样。
</textarea>
<button>过滤</button>
<br/>
<br/>
<select name="sel" id="sel" multiple>
    <option value="JavaScript">JavaScript</option>
    <option value="Html/Css">html/css</option>
    <option value="Html5">Html5</option>
    <option value="C">C</option>
    <option value="C++">C++</option>
    <option value="Java">Java</option>
</select>
<script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="js/keywordfilter.js"></script>
<script>
    var txt = document.getElementById('key1'),
            btn = document.querySelector('button'),
            opt = document.getElementsByTagName('option');
    btn.addEventListener('click', function() {
        keywordfilter(txt);
    })
    forbidcheck(opt);
</script>
</body>
</html>

相关js代码如下:

/**
 * Created by MAORUIBINon 2016-03-29.
 */
;(function(win) {
    var keywordfilter = function(txt) {
        var keyword = ['性', /['喜']{1}.{0,5}[欢]{1}/g];
        for (var i = 0; i < keyword.length; ++i) {
            txt.value = txt.value.replace(keyword[i], '***')
        }
    };
    var forbidcheck = function(sel) {
        var selectNum = 0,
            limit = 3;
        if (!Array.isArray(sel)) {
            sel = [].slice.call(sel);
        }
        for (var i = 0, len = sel.length; i < len; ++i) {
            sel[i].onclick = function() {
                if (selectNum < limit) {
                    this.selected = true;
                    selectNum ++;
                }else {
                    this.selected = false;
                }
            }
        }
    }

    win.keywordfilter = keywordfilter;
    win.forbidcheck = forbidcheck;
})(window)

当然,这个精选做得实在是太简陋,大家不必模仿,领会精神就行了^_^。

點擊查看更多內容
10人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
Web前端工程師
手記
粉絲
9109
獲贊與收藏
2572

關注作者,訂閱最新文章

閱讀免費教程

感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消