Jquery 输入don';AJAX更新后无法获得焦点。IE7
我有一个页面有几个表单。用户可以修改内容,所有请求都通过AJAX完成。每个AJAX调用都会更新页面的一部分,其中包含一个表单 更新后,所有输入表单都不会获得焦点。这只发生在IE上,我在Chrome上试过,效果很好 有什么想法吗 编辑: 控制器Jquery 输入don';AJAX更新后无法获得焦点。IE7,jquery,asp.net-mvc,ajax,Jquery,Asp.net Mvc,Ajax,我有一个页面有几个表单。用户可以修改内容,所有请求都通过AJAX完成。每个AJAX调用都会更新页面的一部分,其中包含一个表单 更新后,所有输入表单都不会获得焦点。这只发生在IE上,我在Chrome上试过,效果很好 有什么想法吗 编辑: 控制器 [HttpPost, ValidateInput(false)] public ActionResult SaveRiskAndRewardItem(int RiskAndRewardItemId, short RiskAndRewardR
[HttpPost, ValidateInput(false)]
public ActionResult SaveRiskAndRewardItem(int RiskAndRewardItemId, short RiskAndRewardRating, string Description)
{
RiskAndRewardItem model = RiskAndRewardItemModelBuilder.GetInstance().BuildOne(RiskAndRewardItemId);
model.RiskAndRewardRating = RiskAndRewardRating;
model.Description = Description;
if (ModelState.IsValid)
{
_riskAndRewardItemRepository.Update(model);
}
return PartialView("_RiskAndRewardItem", model);
}
看法
@model KII.Models.risk和wardItem
编辑
@对于(int i=1;i<8;i++)
{
@我
}
较低的报酬/风险
更高的回报/风险
@Html.Raw(@Model.Description)
@使用(Ajax.beginnform(“saveriskandwarditem”),null,新的AjaxOptions
{
UpdateTargetId=“itemContent-”+@Model.Item.Id,
HttpMethod=“POST”,
InsertionMode=InsertionMode.Replace,
OnBegin=“加载(\”itemContent-“++@Model.Item.Id+“\”),
OnSuccess=“已加载(\”itemContent-“++@Model.Item.Id+”\”),
},新的{@id=“TitleForm”})
{
@对于(int i=1;i<8;i++)
{
@我
}
@型号.说明
}
我有4个不同的局部视图,每个视图在控制器中都有自己的方法。与上面的一样。您用来提供表单元素焦点的jquery代码在哪里?我没有使用javascript提供元素焦点。页面更新后,当我单击表单元素时,它们不会获得焦点。好像他们不在那里。我使用Ajax.BeginForm提交表单并更新页面内容,我相信页面本身使用JQuery。
@model KII.Models.RiskAndRewardItem
<div data-risk-and-reward-item-id="@Model.Id">
<span class="editContentLink actionLink" data-risk-and-reward-item-id="@Model.Id" data-viewer="viewrisk-and-reward-item-@Model.Id" data-editor="editrisk-and-reward-item-@Model.Id">Edit</span>
<div id="viewrisk-and-reward-item-@Model.Id">
<table class="riskAndRewardTable">
<tr data-risk-and-reward-item-id="@Model.Id">
@for (int i = 1; i < 8; i++)
{
<td class="risk-and-reward-item @((i == @Model.RiskAndRewardRating) ? "risk-and-reward-item-selected" : "")">@i
</td>
}
</tr>
</table>
<div style="display: inline">
<div style="float: left">
lower rewards/risk
</div>
<div style="float: right">
higher rewards/risk
</div>
<br />
<br />
</div>
<div data-risk-and-reward-item-id="@Model.Id">
@Html.Raw(@Model.Description)
</div>
</div>
<div id="editrisk-and-reward-item-@Model.Id" style="display: none;width:100%">
@using (Ajax.BeginForm("SaveRiskAndRewardItem", null, new AjaxOptions
{
UpdateTargetId = "itemContent-" + @Model.Item.Id,
HttpMethod = "POST",
InsertionMode = InsertionMode.Replace,
OnBegin = "loading(\"itemContent-" + @Model.Item.Id+"\")",
OnSuccess = "loaded(\"itemContent-" + @Model.Item.Id+"\")",
}, new { @id = "TitleForm" }))
{
<table class="riskAndRewardTable">
<tr data-risk-and-reward-item-id="@Model.Id">
@for (int i = 1; i < 8; i++)
{
<td class="risk-and-reward-item-edit @((i == @Model.RiskAndRewardRating) ? "risk-and-reward-item-selected-edit" : "")">@i
</td>
}
</tr>
</table>
<br />
<input id="RiskAndRewardItemId" name="RiskAndRewardItemId" type="hidden" value="@Model.Id" />
<input id="RiskAndRewardRating" name="RiskAndRewardRating" type="hidden" value="@Model.RiskAndRewardRating" />
<textarea id="Description" class="htmleditor" name="Description" rows="5" cols="40">@Model.Description</textarea>
<div style="text-align: right">
<input id="titleButton" type="submit" class="button" value="Save" /></div>
}
</div>
</div>