区域3是控件UserControlInfos.ascx,现在想通过捕获点击区域1中的按钮"button0"激发JS函数selcontrol(obj),提交到controllers进行数据库查询,然后将查询结果返回到UserControlInfos.ascx控件。
现在的问题是在controllers中已经查询到了数据,并返回了结果,但是区域3的控件UserControlInfos.ascx显示的内容依然没有改变,请问如何将新查询返回的数据显示到区域3。
view层处理选中消息的JS代码:
<script type="text/javascript">
function selcontrol(obj) {//选中控件
$.get(
"/home/index/", {
str: obj.id
},
function(data,state){
//这里显示从服务器返回的数据
alert(data);
//这里显示返回的状态
alert(state);
}
)
}
</script>
controllers层相应响应代码:
UIDesignerRepository UIDRes = new UIDesignerRepository();
public ActionResult Index(string str = null)
{
IQueryable<UIInfo> info = null;
if (!string.IsNullOrEmpty(str))
{
info = UIDRes.FindUIsByText(str); //根据字符串查询数据库操作
}
if (Request.IsAjaxRequest())
{
return PartialView("UserControlInfos", info);
}
return View(info);
}
UserControlInfos.ascx代码
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<UIDesigner.Models.UIInfo>" %>
<script src="/Scripts/jquery.unobtrusive-ajax.min.js" type="text/javascript"></script>
<% if (Model != null){%>
<fieldset id="fdProp">
<legend>属性</legend>
<div class="display-label"><strong>UID:</strong> <%: Model.UID %></div>
<div class="display-field"></div>
<div class="display-label"><strong>value:</strong> <%: Model.value %></div>
<div class="display-field"></div>
<div class="display-label"><strong>pixelleft:</strong> <%: Model.pixelleft %></div>
<div class="display-field"></div>
<div class="display-label"><strong>pixeltop:</strong> <%: Model.pixeltop %></div>
<div class="display-field"></div>
<div class="display-label"><strong>disabled:</strong> <%: Model.disabled %></div>
<div class="display-field"></div>
<div class="display-label"><strong>EventDate:</strong> <%: String.Format("{0:g}", Model.EventDate) %></div>
<div class="display-field"></div>
</fieldset>
<%} %>
最好有示例代码,谢谢,100分奉上!