问题情景:
寄放柜表单提前导入,对成员来说只编辑不删除不新增。
成员(存物品)进入表单编辑时,希望系统能够自动填写当前登录人(即成员组件、人员搜索框),应该如何实现这一功能?
已知获取登录人文本格式的函数“this.utils.getLoginUserId()”
“this.utils.getLoginUserName()”
但是如何赋值给人员搜索框呢?
this.$('组件惟一标识').setValue([{ label: window.loginUser.userName, value: window.loginUser.userId}])
要在表单中自动填写当前登录人的姓名,请按照以下步骤操作:
<input type="text" id="user-name">
document.getElementById('user-name').value = this.utils.getLoginUserName();
window.onload = function() {
document.getElementById('user-name').value = this.utils.getLoginUserName();
}
在JavaScript中,如果你想将一个变量赋值给一个HTML元素,你可以使用element.value = value
的方式。例如,如果你想将this.utils.getLoginUserId()
的结果赋值给一个名为userIdInput
的元素,你可以这样做:
var userIdInput = document.getElementById('userIdInput');
userIdInput.value = this.utils.getLoginUserId();
这里假设userIdInput
是一个文本输入框,并且它的id
属性值为userIdInput
。如果你的HTML元素没有id
属性,你可以使用class
属性,或者通过其他方式来定位元素。
对于你的情况,你可能需要先将所有的成员信息预先加载到页面中,然后将当前登录人的信息动态地填充到相应的输入框中。这可能需要一些额外的逻辑,例如检查输入框的name
属性,然后根据name
属性的值来填充信息。
在您的表单中,成员进入编辑界面后,可以使用JavaScript来获取登录人的ID和用户名,并将这些值赋给人员搜索框。
以下是一个简单的示例:
loginUserId
和loginUserName
。<el-form-item label="登录人ID">
<el-input v-model="form.loginUserId" type="hidden"></el-input>
</el-form-item>
<el-form-item label="登录人姓名">
<el-input v-model="form.loginUserName" type="hidden"></el-input>
</el-form-item>
mounted()
生命周期钩子函数中,调用this.utils.getLoginUserId()
和this.utils.getLoginUserName()
函数来获取登录人的ID和用户名,并将这些值赋给相应的隐藏字段。mounted() {
this.form.loginUserId = this.utils.getLoginUserId();
this.form.loginUserName = this.utils.getLoginUserName();
}
methods: {
// 在成员进入表单编辑界面时触发
handleEdit(row) {
this.form.id = row.id;
// 将登录人的ID和用户名赋给人员搜索框
this.form.searchPersonId = this.form.loginUserId;
this.form.searchPersonName = this.form.loginUserName;
this.dialogVisible = true;
},
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。