weui中的picker使用js进行动态绑定数据

682 阅读1分钟
解决方案; picker和Select组件是通过input标签绑定,可以先通过input的父级元素移除input标签,重新插入input标签,最后重新初始化picker或Select组件。
[backcolor=rgb(255, 255, 255) !important][size=1em]
1

2

3

4

5

6

7

8

9

10

11

<div class="weui-cell">
<div class="weui-cell__hd"><label for="time-format" class="weui-label">性别</label></div>
<div class="weui-cell__bd">
<input class="weui-input " id="appl_sex" name="appl_sex" type="text" value="">
</div>
</div>


<div id="box">
<input type="text" id='camera' value="前置摄像头"/>
</div>



js代码:
[backcolor=rgb(255, 255, 255) !important][size=1em]
1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

$("#appl_sex").picker({

title: "请选择",
cols: [
{
textAlign: 'center',
values: ["1",'2']
}
],
onChange: function(p, v, dv) {
console.log(p, v, dv);
},
onClose: function(p, v, d) {
console.log("close");
}
});

$('#appl_sex').change(function () {
/*选择设备号后,根据当前设备号设置不同的摄像头选项,具体判断逻辑根据具体的项目而定*/
var val = $("#appl_sex").val();
if (val == "1") {
$("#box").empty();
$("#box").html("<input type='text' id='camera' value='前置摄像头'/>");
$("#camera").picker({
title: "请选择摄像头",
cols: [
{
textAlign: 'center',
values: ['前置摄像头']
}
]
});
} else {
$("#box").empty();
$("#box").html("<input type='text' id='camera' value='前置摄像头'/>");
$("#camera").picker({
title: "请选择摄像头",
cols: [
{
textAlign: 'center',
values: ['前置摄像头', '后置摄像头', '前+后摄像头']
}
]
});
}
});