我想使用jQuery为按钮添加一个单击处理程序,但处理程序需要引用控制器提供的数据。有没有办法在ASP.NET MVC的脚本块中访问ViewData?或者我需要在控制器中构建脚本吗?
答案 0 :(得分:2)
如果脚本块在ASP.NET页面中,那么您可以引用它......
e.g:
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('#group-edit-form').validate({
rules: {
title: {
required: true,
remote: '<%=Url.Action("ValidateGroupName", new { id = ViewData["GroupId"] }) %>?parentId=' + getParentId()
}
},
messages: {
title: {
required: getMessage (7002),
remote: '<%= ((MessagingModel)ViewData["Messages"]).GetMessage (9001) %>'
}
}
})
});
</script>
当运行时引擎处理页面时,&lt;%...%&gt;内的所有内容无论页面中的位置如何,都会评估块。