layui(同音異義語:UI風)は、独自のモジュール仕様で書かれたフロントエンドUIフレームワークで、ネイティブHTML/CSS/JSの書き方や構成形式に準拠しています。箱の。
layui で一般的に使用されるメソッド:
layui の入力ラジオ ラジオ ボタンは、選択トリガー イベントをリッスンします:
入力にバインドされたレイフィルターに基づいて入力を検索し、関数判定を入力します。
<div class="layui-form-item"> <label class="layui-form-label">长期短期</label> <div class="layui-input-block"> <input type="radio" name="term" value="长期" title="长期有效" lay-filter="term"> <input type="radio" name="term" value="短期" title="短期有效" lay-filter="term"> </div> </div> <div id="termtime" class="layui-hide"> <div id="classdate" class="layui-form-item" > <label class="layui-form-label">开始时间:</label> <div class="layui-input-block"> <input type="text" name="startdate" id="startdate" lay-verify="startdate" autocomplete="off" class="layui-input"> </div> <label class="layui-form-label">结束时间:</label> <div class="layui-input-block"> <input type="text" name="enddate" id="enddate" lay-verify="enddate" autocomplete="off" class="layui-input"> </div> </div> </div>
form.on('radio(term)', function(data) { if (data.value == "短期") { $("#termtime").removeClass("layui-hide"); } else if (data.value == "长期") { $("#termtime").addClass("layui-hide"); } });
ステータス条件に応じて異なるボタンを表示するようにボタンを設定します。
<script type="text/html" id="toolbtn"> {{# if(d.state == true){}} <a class="layui-btn layui-btn-mini layui-btn-danger" lay-event="down">下线</a> {{# } else { }} <a class="layui-btn layui-btn-mini " lay-event="up">发布</a> {{# } }} </script>
さまざまなポップアップ ウィンドウ:
注: 一部のモジュールでは既にレイヤーが宣言されており、一部のモジュールでは宣言されていないため、ここではlayui.layer メソッドを使用してレイヤーを呼び出します。ポップアップ レイヤー:
半透明の黒い背景のプロンプト ボックス、666 ミリ秒で自動的に閉じます:
layui.layer.msg(returndata.msg,{time: 666});
青いモジュール、左側にアニメーションがポップアップし、[OK] ボタンが付いています
layui.use('layer', function() { layer.alert(returndata.msg, { skin: 'layui-layer-lan' ,closeBtn: 0 ,anim: 4 //动画类型 }); });
入力には数値のみを入力でき、他の入力と小数点は入力できません
<input type="text" id="num" name="num" placeholder="请输入" autocomplete="off" class="layui-input" onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">
layui マスク レイヤー、アップロードが開始され、成功後にマスク レイヤーを閉じます
<script type="text/javascript"> function tanchu(){ layui.use('layer', function(){ var layer = layui.layer; var index = layer.load(1, { shade: [0.1,'#fff'] //0.1透明度的白色背景 }); }); } function tanchuclose(){ layui.use('layer', function(){ var layer = layui.layer; layer.close(layer.index); }); } </script>
<script type="text/javascript"> function upload(){ tanchu(); var formData = new FormData($( "#uploadForm" )[0]); $.ajax({ url: '<%=basePath%>/knowledge/upload' , type: 'POST', data: formData, async: false, cache: false, contentType: false, processData: false, success: function (returndata) { tanchuclose(); alert(returndata); }, error: function (returndata) { alert(returndata); } }); } </script>
クリックして変更:
if(obj.event === 'setSign'){ layer.prompt({ formType: 2 ,title: '修改 ID 为 ['+ data.id +'] 的角色页面' ,value: data.homePage }, function(value, index){ layer.close(index); $.ajax({ type:"post", url:"<%=basePath%>/sys/role/update", data:{role:JSON.stringify(data)}, dataType:"text",//返回的 success:function(data1) { layer.alert(data1.result); table.reload('idTest', { //url: '../user/selectmsguser.do' url: '<%=basePath%>/sys/role/list1?q=1' ,where: {} //,height: 300 }); }, error:function(msg) { cosole.log(msg); } }); obj.update({ sign: value }); }); }
#日付を時、分、秒に書式設定: #<script type="text/html" id="timeTpl">
{{# var fn = function(){
var date=new Date(d.uptime);
var d1=date.getDate();
var y=date.getFullYear();
var m=date.getMonth() + 1;
var HH=date.getHours();
var mm=date.getMinutes();
var ss=date.getSeconds();
return y+'/'+m+'/'+d1+' '+HH+':'+mm+':'+ss;
}; if(true){ }}
{{ fn() }}
{{# } }}
</script>
<script type="text/html" id="timeTpl">
{{# var fn = function(){
var date=new Date(d.createtime);
var d1=date.getDate();
var y=date.getFullYear();
var m=date.getMonth() + 1;
return y+'/'+m+'/'+d1;
}; if(true){ }}
{{ fn() }}
{{# } }}
</script>
<script type="text/html" id="pwd">
{{# var fn = function(){
return '***';
}; if(true){ }}
{{ fn() }}
{{# } }}
</script>
<script type="text/html" id="barDemo1">
<a class="layui-btn layui-btn-mini" id="edit" lay-event="edit">保存</a>
<a class="layui-btn layui-btn-danger layui-btn-mini" lay-event="del">冻结</a>
</script>
<script type="text/html" id="usernameTpl">
<a href="/?table-demo-id={{d.id}}" class="layui-table-link" target="_blank">{{ d.username }}</a>
</script>
#
<script type="text/javascript"> layui.use('form', function() { var form = layui.form; $("#tname").children().remove(); $.ajax({ type : "post", url : "../user/selectallusersrole.do?role=3", dataType : "json", sync : "false", success : function(data) { for (var a = 0; a < data.data.length; a++) { $("#tname").append( "<option class='tname' value="+data.data[a].id+" >"+ data.data[a].urealname + "</option>") } form.render('select'); //用ajax追加的需要这样渲染一下 }, error : function() { } }) $("#urealname").children().remove(); $.ajax({ type : "post", url : "../user/selectallusersrole.do?role=4", dataType : "json", sync : "false", success : function(data) { for (var a = 0; a < data.data.length; a++) { $("#urealname").append( "<option class='name' value="+data.data[a].id+" >"+ data.data[a].urealname + "</option>") } form.render('select'); //用ajax追加的需要这样渲染一下 }, error : function() { } }) $("#cname").children().remove(); $.ajax({ type : "post", url : "../class/selectclass.do", dataType : "json", sync : "false", success : function(data) { for (var a = 0; a < data.data.length; a++) { $("#cname").append( "<option class='tname' value="+data.data[a].cid+" >"+ data.data[a].cname + "</option>") } form.render('select'); //用ajax追加的需要这样渲染一下 }, error : function() { } }) //form.on('select(username)', function(data) {//给隐藏的input赋值(机构id) //$("#yincang").val(data.value); //}); }); </script>フォームは値データを取得します:
function formLoad(element,data){ var input = document.getElementById(element).getElementsByTagName('input'); for(var i =0;i < input.length;i++){ var inputname = input[i].name; for(var j in data){ if(inputname == j){ input[i].value = data[j]; } } } }#これは検索ボタンです。クリックするとリロードがトリガーされます:
<div class="demoTable"> 搜索角色: <div class="layui-inline"> <input class="layui-input" name="name" id="demoReload" autocomplete="off"> </div> <button class="layui-btn" style="transform: translateY(-10px);" data-type="reload">搜索</button> </div>
これはリロード イベントです:
オーバーロードされた URL を指定する必要はなく、テーブルの ID に従ってリロードするだけで済みます。通常のタグの id="idno" ではなく、layui で宣言された ID です。次に、where<script>
layui.use('table', function(){
var table = layui.table;
var $ = layui.$, active = {
reload: function(){
var demoReload = $('#demoReload');
//执行重载
table.reload('idTest', {
page: {
curr: 1 //重新从第 1 页开始
},
where: {
name: demoReload.val()
}
});
}
};
$('.demoTable .layui-btn').on('click', function(){
var type = $(this).data('type');
active[type] ? active[type].call(this) : '';
});
});
</script>
$("#addBookbtn").click(function(){ layer.open({ type: 2, title:['添加新书信息','font-size:22px'], area: ['400px', '420px'], content: '../jsp/addbook.jsp', cancel: function(index, layero){ layer.confirm('是否关闭?', {icon: 3, title:'提示'}, function(index){ layer.close(index); table.reload("booktable"); }); } }); });
layui 関連の知識については、ご注意くださいlayuiframework。
以上が一般的なレイウイの方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

Dreamweaver Mac版
ビジュアル Web 開発ツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ホットトピック









