setData方法不能给控件赋值
本帖最后由 hw_2x_vc 于 2017-3-21 13:43 编辑//alert(data.cname) 不注释这一句 可以加载。
<form id="form1" method="post">
<input id="_state" name="_state" class="mini-hidden" />
<div style=" padding-left:11px;padding-bottom:5px;">
<table style="width:100%; table-layout:fixed; padding-bottom:5px;">
<tr>
<td style="width:250px;">用户编号:
<input style="width:200px;" id="ccode" name="ccode" value="" class="mini-textbox" required="true" emptyText="请输入用户编号" />
</td>
</tr>
<tr>
<td style="width:250px;">用户姓名:
<input style="width:200px;" id="cname" name="cname" value="" class="mini-textbox" required="true" emptyText="请输入用户姓名" />
</td>
</tr>
<tr>
<td style="width:250px;">登录密码:
<input style="width:200px;" id="cpassword" value="" name="cpassword" class="mini-password" emptyText="请输入密码" />
</td>
</tr>
<tr>
<td style="width:250px;">确认密码:
<input name="cpasswordok" id="cpasswordok" value="" style="width:200px;" class="mini-password" emptyText="请输入密码" />
</td>
</tr>
</table>
</div>
</form>
function SetData(data) {
//跨页面传递的数据对象,克隆后才可以安全使
mini.get("cpassword").setValue("");
mini.get("cpasswordok").setValue("");
mini.get("_state").setValue(data.action);
//alert(data.ccode)
data = mini.clone(data);
//alert(data.cname)
//alert(data.cpassword)
//alert(data.action)
if (data.action == "edit") {
//alert(data.cname)
var o = mini.decode(data);
mini.get("cname").setValue(data.cname)
mini.get("ccode").setValue(data.ccode)
mini.get("cpassword").setValue(data.cpassword);
mini.get("cpasswordok").setValue(data.cpassword);
//$("#cname$text").val(data.cname);
//$("#ccode$text").val(data.ccode);
//$("#cpassword").val("");
//$("#cpasswordok").val("");
//alert(data.action)
}
}
function edit() {
var row = grid.getSelected();
if (row) {
mini.open({
url: "/cpsUser/editUser",
title: "编辑用户", width: "400px", height: "300px",
onload: function () {
var iframe = this.getIFrameEl();
var data = { action: "edit", ccode: row.ccode, cname: row.cname, cpassword:"",cpasswordok:"" };
iframe.contentWindow.SetData(data);
},
ondestroy: function (action) {
//var iframe = this.getIFrameEl();
grid.reload();
}
});
} else {
alert("请选中一条记录");
}
}
名称和密码 总是有一个默认值 admin
你这data到底是什么结构的数据
从这些代码看不出你注释的代码和data有什么联系和影响
请提供一个完整的html页面来重现 felt 发表于 2017-3-21 10:42 static/image/common/back.gif
你这data到底是什么结构的数据
从这些代码看不出你注释的代码和data有什么联系和影响
请提供一个完整的html ...
function edit() {
var row = grid.getSelected();
if (row) {
mini.open({
url: "/cpsUser/editUser",
title: "编辑用户", width: "400px", height: "300px",
onload: function () {
var iframe = this.getIFrameEl();
var data = { action: "edit", ccode: row.ccode, cname: row.cname, cpassword:"",cpasswordok:"" };
iframe.contentWindow.SetData(data);
},
ondestroy: function (action) {
//var iframe = this.getIFrameEl();
grid.reload();
}
});
} else {
alert("请选中一条记录");
}
} hw_2x_vc 发表于 2017-3-21 13:42 static/image/common/back.gif
function edit() {
var row = grid.getSelected();
if (row) {
没发现你这代码有什么问题
var data = { action: "edit", ccode: row.ccode, cname: row.cname, cpassword:"",cpasswordok:"" };
你传递的data就是只有。cpassword字段本来就是空的
mini.get("cpassword").setValue(data.cpassword);
mini.get("cpasswordok").setValue(data.cpassword);
这两行赋值过去也应该是空的。
你这默认的admin应该是浏览器自动填写的,可以把浏览器的这个功能关掉。 能否组织这个浏览器的默认值 hw_2x_vc 发表于 2017-3-26 13:02 static/image/common/back.gif
能否组织这个浏览器的默认值
这是你浏览器的功能,我们不好阻止,如果要阻止也是你处理的,加载完后主动将这2个控件清空掉。
页:
[1]