Bootstrap 4 使用Erlang氮气和Bootstrap 4模板
是否有一种方法允许Bootstrap4设计的网页(作为氮模板)与Erlang氮“交互” 除了分解所有输入字段、按钮和表单并将其转换为氮气外,是否可以保持设计的HTML页面不变,并添加标记,以告知氮气在呈现时在按钮上执行回发事件,或访问字段内容 例如,这是设计的引导代码,我希望使用氮气处理回发。(所有必需的javascript和css都包含在页面中,web页面是名为的模块的模板)Bootstrap 4 使用Erlang氮气和Bootstrap 4模板,bootstrap-4,erlang,nitrogen,Bootstrap 4,Erlang,Nitrogen,是否有一种方法允许Bootstrap4设计的网页(作为氮模板)与Erlang氮“交互” 除了分解所有输入字段、按钮和表单并将其转换为氮气外,是否可以保持设计的HTML页面不变,并添加标记,以告知氮气在呈现时在按钮上执行回发事件,或访问字段内容 例如,这是设计的引导代码,我希望使用氮气处理回发。(所有必需的javascript和css都包含在页面中,web页面是名为的模块的模板) 登录 这是一个有趣的想法。这是有可能实现这一点与最小的变化 使用原始代码,要在回发中捕获的任何表单元素都必须添加到类
登录
这是一个有趣的想法。这是有可能实现这一点与最小的变化
使用原始代码,要在回发中捕获的任何表单元素都必须添加到类wfid\u ELEMENT\u ID
例如:
(注意类中的wfid\u login\u username)
此外,
元素将完全被氮气忽略(无论如何,在当前情况下),因此可以安全地将其移除
然后,要进行回发,您有两个选项:
wf:wire(按钮id,#事件{type=click,postback=login})
,或
postback
HTML属性:
postback=SOMETHING
,并连接相关的page.myapi
调用
$(“[postback]”)。每个(函数(即,e){
var pb=$(e).attr(“回发”);
$(e).on(“单击”,function(){page.myapi(pb)});
});
最后,为您的api构建处理程序函数:
api\u事件(myapi,\u,PostbackString)->
wf:wire(#alert{text=wf:f(“您的回发是:~p,[PostbackString]))。
当然,这样做会丢失很多回发功能,因为回发可以安全地包装元组、映射等复杂术语-此方法实际上只回发附加到postback
HTML属性的字符串。但它应该适用于这样的简单接口
<form class="form-horizontal m-t-20 " id="loginform" name="loginform" method="POST" action="#">
<div class="input-group mb-3 ">
<div class="input-group-prepend ">
<span class="input-group-text " id="basic-addon1 "><i class="ti-user "></i></span>
</div>
<input type="text " class="form-control form-control-lg " placeholder="Username " aria-label="Username " aria-describedby="basic-addon1 " id="login_username">
</div>
<div class="form-group text-center ">
<div class="col-xs-12 p-b-20 ">
<button class="btn btn-block btn-lg btn-info " type="submit" postback=login>Log In</button>
</div>
</div>