【发布时间】:2023-04-05 19:51:01
【问题描述】:
如果 option.AgentName 中有值,我是否可以将此 select2 设置为禁用只读?我已经添加了 selectElement.select2 方法,有什么可以添加到回调的吗?
这是正确的方法吗?使用 self.entry.Agent.AgentName != ""?
查看
<div class="form-group sentence-part-container sentence-part ng-scope ui-draggable sentence-part-entry-agent sentence-part-with-select2-single" [class.has-errors]="entry.IsInvalid && entry.IsTouched">
<div class="sentence-part-values">
<div class="sentence-part-values-select2-single">
<select class="form-control" style="width: 300px" [(ngModel)]="entry.Agent.VersionKey">
<option *ngFor="let option of agents" [value]="option.VersionKey">{{option.AgentName}}</option>
</select>
</div>
</div>
</div>
ts 文件
$selectElement.select2({
initSelection: function(element, callback) {
console.log(self.entry.Agent.AgentName);
if (self.entry.Agent.AgentName != "")
{
console.log('disabled');
$selectElement.prop('disabled', true);
}
callback({ id: self.entry.Agent.VersionKey, text: self.entry.Agent.AgentName });
},
placeholder: "Select an agent"
})
.on("change", (e) => {
self.ngZone.run(() => {
self.entry.Agent.VersionKey = $selectElement.val();
self.entry.AgentVersionKey = self.entry.Agent.VersionKey;
let regimenEntryAgent = this.getRegimenEntryAgentByVersionKey(self.entry.Agent.VersionKey);
if (regimenEntryAgent) {
self.entry.Agent.AgentId = regimenEntryAgent.AgentId;
}
self.onSentenceChange(null);
});
})
.on("select2:close", () => {
self.entry.IsTouched = true;
this.validate();
});
【问题讨论】:
-
您想在选择带有 option.AgentName 的选项后禁用它?或者你想在页面加载时禁用它?
-
如果代理名称中有值则在页面加载中
-
你会包含实例化select2的脚本吗?还将您放入条目和代理模型类和属性。谢谢。
-
@jerdine-sabio 我已经包含了 select2
标签: asp.net-mvc razor jquery-select2