Javascript ASPNETZERO-查找模式-如何将所选数据返回到父模式
我从用户“lookup”模式的organization units视图中使用的代码中学习,并为我的实体“company”重新创建了它 请注意,我没有为我的实体创建新的查找模式视图。我使用的是ABP提供的标准默认查找模式视图 在我的应用程序中的许多其他实体上,它们都在我的创建/编辑模式中使用公司。为了验证这一点,我用一个带有搜索图标的文本框替换了公司的下拉列表,该文本框弹出所有公司的查找模式。 然后,一旦用户从company lookup模式中选择一行,我想用所选的值填充create模式上的文本框。下面显示的JS代码正在做我想要的一切。我似乎无法理解的唯一部分是如何将“选定”名称和值传递回我的createmodal表单Javascript ASPNETZERO-查找模式-如何将所选数据返回到父模式,javascript,asp.net-mvc,aspnetboilerplate,Javascript,Asp.net Mvc,Aspnetboilerplate,我从用户“lookup”模式的organization units视图中使用的代码中学习,并为我的实体“company”重新创建了它 请注意,我没有为我的实体创建新的查找模式视图。我使用的是ABP提供的标准默认查找模式视图 在我的应用程序中的许多其他实体上,它们都在我的创建/编辑模式中使用公司。为了验证这一点,我用一个带有搜索图标的文本框替换了公司的下拉列表,该文本框弹出所有公司的查找模式。 然后,一旦用户从company lookup模式中选择一行,我想用所选的值填充create模式上的文本框
$(document).ready(function () {
var _companyLookupModal = app.modals.LookupModal.create({
title: app.localize("SelectACompany"),
serviceMethod: abp.services.app.nursingOpsLookup.find_Companies
});
$("#btnTest").click(function (){
_companyLookupModal.open({
title: app.localize('SelectACompany')
}, function (selectedItems) {
//Below is not working, as I assume I am inside the lookup modal
$("#CompanyId").val(selectedItems.value);
$("#CompanyName").val(selectedItems.name);
});
});
});
我尝试过的事情:
- 使用abp事件总线并设置触发器
- 使用下面的JS代码将所选值设置到cookie中
localStorage.setItem('selCmpName', selectedItems.name); //Save var selCmpName = localStorage.getItem('selCmpName'); //fetch
上述两种方法都不起作用。有人能告诉我如何将值返回到我的创建模式吗?您需要返回类似的内容,否则
selectedItems
将为空
public async Task<PagedResultDto<NameValueDto>> Find_Companies(FindCompaniesInput input)
{
//filter your companies by the input and return NameValueDto within PagedResultDto
return
new PagedResultDto<NameValueDto>(
companiesCount,
companies.Select(x => new NameValueDto(x.Name, x.Id.ToString())).ToList());
}
请确保在关闭模式之前设置了结果:
app.modals.SomeModal = function () {
var _modalManager;
this.init = function (modalManager) {
_modalManager = modalManager;
};
this.save = function () {
_modalManager.setResult('hello world');
_modalManager.close();
};
}
设置结果将触发回调函数,在本例中,将打印“hello world”
SomeModal.open(
{},
function (callback) {
console.log(callback);
}
);
selectedItems不为空。这不是问题所在。问题在于将值保存到我的创建模式中,该模式正在启动查找模式。
SomeModal.open(
{},
function (callback) {
console.log(callback);
}
);