legend2---开发日志13(layer_mobile的content传入dom 出现【object object】如何解决)
一、总结
一句话总结:
layer_mobile.content只能为string类型
方法一:将dom转成字符串,比如$('$aa').html(),这样的缺点是丢失那些事件
方法二:外面套上script标签,并且把id加在script标签上,因为script标签会被执行
layer.js+script标签:script标签不会被显示,并且会被执行,还不会导致两份相同id,所以非常适合做content的内容
来源:调用layer mobile里面的layer.js发现弹出层变成了[object object]?? - Fly社区
推荐使用这种写法
<script id="formbox" type="text/html">
你的那些 HTML
</script>
使用的时候
content: $('#formbox').html()
1、layer.js的content里除了传入普通的html内容,还可以指定DOM么?
可以:DOM最好该元素要存放在body最外层,否则可能被其它的相对元素所影响
layer.open({ type: 1, content: $('#id') //这里content是一个DOM,注意:最好该元素要存放在body最外层,否则可能被其它的相对元素所影响 });
2、layer.js获取dom类型的content时使用id取dom的问题是什么,比如content:$('#aa')?
id重复:因为你这样导致了id重复了,相当于你克隆了一份dom又插入到body里面了
3、layer.js非常适合script标签做content(不重复id,script标签不显示,会执行),那么对script标签有什么要求?
type="text/html"
<script id="hero_stone_layer{$vo.th_id}" type="text/html">
4、vue常见的绑定id的写法(需要拼接的情况)?
在v-bind中字符串直接拼接vue变量就好
<script v-bind:id="'hero_stone_layer'+school_hero_stone.th_id" type="text/html"></script>
5、script标签中的中的vue统治的标签的绑定属性v-bind应该怎么写(比如img的src)?
不用加v-bind:script本身就表示执行,不加v-bind的话vue照样可以执行
<script v-bind:id="'hero_stone_layer'+school_hero_stone.th_id" type="text/html">
<img src="{{school_hero_stone.th_picture}}" alt="User Image">
</script>
6、layer.js和boostrap的模态框 modal.js的偏好设置(在vue和bootstrap环境下)?
layer.js对vue的双向绑定支持不是很好,所以可以试试model.js
7、装备的特性如何实现?
方法一:在英雄特性表中增加字段:是否是装备特性(或者直接装备id),方便判断是否为装备增加的特性
方法二:直接加在英雄的特性之上(推荐):拆卸装备的时候从上面减去就好(这样好在以前的基础上编程,以前的代码不用改)
8、php查错的快速方法?
断点输出法逐步确定出错位置:dump('111111');die;
9、编程中, 在传数据给页面端时临时加的变量(比如装备类型等级的中文)适合和数据表(装备表)中字段同一前缀(以e_做前缀)么?
不适合:保持数据库字段前缀的唯一性,以便后续选出数据字段更新数据库
10、下面这行代码错在哪?
主表是school_equipment,你却在里面找装备表的id
|||-begin
$equipment=db('school_equipment')->alias('se')->join('equipment e','se.se_e_id=e.e_id','LEFT')->join('template_equipment te','e.e_te_id=te.te_id','LEFT')->find($e_id);
|||-end