asp.net-mvc – ASP.NET MVC编辑器 – 模板/ UIHint与参数
发布时间:2020-05-23 03:27:36 所属栏目:asp.Net 来源:互联网
导读:在过去,我一直使用编辑器模板,通过应用以下数据注释: [UIHint(SomeTemplate)] ViewModel: public class MicroViewModel { public IEnumerableLabMicro Micros { get; set; } [UIHint(DateTime)] public DateTime Date {
|
在过去,我一直使用编辑器模板,通过应用以下数据注释: [UIHint("SomeTemplate")]
ViewModel: public class MicroViewModel
{
public IEnumerable<LabMicro> Micros { get; set; }
[UIHint("DateTime")]
public DateTime Date { get; set; }
public int CaseNo { get; set; }
[UIHint("SampleTypes")]
public int LabSampleTypeID { get; set; }
[UIHint("SampleDetails")]
public int LabSampleDetailID { get; set; }
}
如果我想使用特定的日期选择器控件而不是普通的控件,它可以实现如下。 例: @model DateTime?
@Html.TextBox("",String.Format("{0:yyyy-MM-dd}",Model.HasValue ?
Model : DateTime.Today),new { @class = "dp",style="width:100px" })
<script type="text/javascript">
$(document).ready(function () {
$(".dp").datepicker({
changeMonth: true,changeYear: true,dateFormat: 'yy-mm-dd'
});
});
</script>
对于我的ID字段,我想使用jQuery自动完成组件。 题: 我如何将附加参数传递给LabSampleTypeID和LabSampleDetailID的UIHint部分视图? (像Id一样,有一个自动完成的编辑器模板,将采取一个URL和属性名称为例) 我认为我的自动完成编辑器模板/部分应该看起来像: $(".auto").autocomplete({
source: function(request,response) {
$.ajax({
url: '[#URL_TO_USE]',dataType: "json",data: {
filter: request.term
},success: function(data) {
response($.map(eval(data),function(item) {
return {
label: item.[#PROPERTY_TO_USE]
}
}));
}
})
}
});
解决方法您可以使用AdditionalMetadata属性:[UIHint("DateTime")]
[AdditionalMetadata("foo","bar")]
public DateTime Date { get; set; }
并在模板中: @ViewData.ModelMetadata.AdditionalValues["foo"] 所以如果你想传递一个url: [UIHint("DateTime")]
[AdditionalMetadata("controller","somecontroller")]
[AdditionalMetadata("action","someaction")]
[AdditionalMetadata("property","someproperty")]
public DateTime Date { get; set; }
并在您的模板: @{
var values = ViewData.ModelMetadata.AdditionalValues;
}
<script type="text/javascript">
$('.auto').autocomplete({
source: function (request,response) {
$.ajax({
url: '@Url.Action((string)values["action"],(string)values["controller"])',success: function (data) {
response(
$.map(eval(data),function (item) {
return {
label: item['@values["property"]']
}
})
);
}
});
}
});
</script> (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – visual studio 2013“添加控制器”丢失
- asp.net-core – ASP.NET 5中的HandleUnknownAction
- asp.net – 敏捷,Scrum和CMMI TFS流程模板之间有什么区别
- ASP.NET从内存而不是从文件中流内容
- asp.net-mvc – 使用ASP.NET MVC的RESTful Web服务
- asp.net-mvc – 如何在ASP.NET MVC中执行辅助操作(即计算字
- asp.net-mvc – 从一个项目到另一个项目调用控制器
- asp.net-mvc – 什么原因导致asp.net无法创建/影子复制错误
- asp.net-mvc – ASP.NET MVC SiteMap提供程序 – 如何在实际
- asp.net-mvc – ASP.NET MVC如何指定View页面驻留在哪个文件
推荐文章
站长推荐
- asp.net – 您何时会在Web自定义控件上使用Web用
- 实现ASP.NET MVC应用程序的全文搜索的最佳方法是
- asp.net-mvc-5 – MVC 5 AttributeRouting Catch
- asp.net – 存储库是否应该调用另一个存储库?或
- 子文件夹中忽略ASP.NET web.config授权设置
- 加速ASP.Net网站或应用程序
- asp.net – GetExternalLoginInfoAsync()loginIn
- asp.net-mvc – AspNet如何与我的模型识别
- asp.net-mvc-3 – 在Razor/MVC3中显示数据库映像
- rest – asp.net Web Api – 默认错误消息
热点阅读
