中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Layui如何實現input輸入?

發布時間:2020-05-22 18:06:55 來源:億速云 閱讀:244 作者:鴿子 欄目:web開發

Layui實現input輸入和選擇的方法:

HTML代碼:

<div class="layui-col-md4">
                <label class="layui-form-label">移交單位<span style="color:red">*</span></label>
                <div class="layui-input-block">
                    <input type="text" name="HandoverCompany" id="HandoverCompany" class="layui-input" style="position:absolute;z-index:2;width:80%;" lay-verify="required" value="111" onkeyup="search()" autocomplete="off">
                    <select type="text" id="hc_select" lay-filter="hc_select" autocomplete="off" placeholder="移交單位全稱" lay-verify="required" class="layui-select" lay-search>
                        <option value="111">111</option>
                        <option value="222">222</option>
                        <option value="333">333</option>
                        <option value="444">444</option>
                        <option value="555">555</option>
                    </select>
                </div>
            </div>

其中input的幾個style樣式簡單說一下。

position:absolute 在這里是讓input和select在同一位置。

z-index:2 是為了讓input在select上面。

width:80% 是為了不蓋住select后面的小三角符號,select還可以點擊。

autocomplete="off" 為了不自動填充input框,免得壓蓋select選項

然后是JS代碼。

layui.use(['form', 'layedit','upload'], function () {
            var form = layui.form
   form.on('select(hc_select)', function (data) {   //選擇移交單位 賦值給input框
                $("#HandoverCompany").val(data.value);
                $("#hc_select").next().find("dl").css({ "display": "none" });
                form.render();
            });

            window.search = function () {
                var value = $("#HandoverCompany").val();
                $("#hc_select").val(value);
                form.render();
                $("#hc_select").next().find("dl").css({ "display": "block" });
                var dl = $("#hc_select").next().find("dl").children();
                var j = -1;
                for (var i = 0; i < dl.length; i++) {
                    if (dl[i].innerHTML.indexOf(value) <= -1) {
                        dl[i].style.display = "none";
                        j++;
                    }
                    if (j == dl.length-1) {
                        $("#hc_select").next().find("dl").css({ "display": "none" });
                    }
                }
                
            }
        });

簡單說一下我的思路,首先select選擇的值要能賦值給input框,可以就需要form.on('select(hc_select)'來監聽select值的變化,選擇了之后要把下拉列表給隱藏掉。同時重新渲染一下這個表單,只重新渲染當前的select也是可以的。

然后就是輸入到input框里的文字如何去select中去搜索。首先我們通過檢查select的dom結構可以發現,他里面的選項都是在dl下的dd標簽中,如圖。

Layui如何實現input輸入?

然后我們獲取到dl標簽,然后通過循環的方式挨個去匹配dd中的選項與我們輸入的文本是否存在關系。通過indexOf就行。如果不相似,則直接隱藏掉,然后這里為什么要定義一個j呢?

是因為如果都不匹配的話,下面還是會出來一個空的dl標簽,頁面顯示就是一個空的小列表,有點影響美觀,所以如果你輸入的文本和下拉列表中的選項都沒關系的話,直接把dl給隱藏了。這里我是判斷不相似的個數如果和dl.length 相等的話,就說明你輸入的文本和select的選項沒一個相似的,然后就可以把dl隱藏了。

以上就是Layui實現input輸入和選擇的方法的詳細內容,更多請關注億速云其它相關文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

梁河县| 迁安市| 施秉县| 康保县| 顺平县| 三穗县| 车险| 玛曲县| 公安县| 齐齐哈尔市| 特克斯县| 周至县| 舒兰市| 洞口县| 象州县| 乌什县| 敦煌市| 温宿县| 达拉特旗| 华安县| 仙游县| 东源县| 丘北县| 南雄市| 乐陵市| 蛟河市| 定西市| 威远县| 曲阜市| 麟游县| 逊克县| 邻水| 莒南县| 碌曲县| 海安县| 和龙市| 永靖县| 阜新市| 汝城县| 卢龙县| 丹阳市|