加入收藏 | 设为首页 | 会员中心 | 我要投稿 商洛站长网 (https://www.0914zz.com/)- AI应用、CDN、边缘计算、云计算、物联网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – ASP.NET MVC jQueryUI datepicker在使用AJAX.BeginFo

发布时间:2021-02-20 10:18:03 所属栏目:asp.Net 来源:互联网
导读:我有一个ASP.NET MVC部分视图,其中包含一个配置为使用 JQueryUI中的datepicker的Html.TextBox.这是通过确保样式设置为.datepicker来完成的.这一切都很好.但是我已经将表单更改为Ajax.BeginForm并包含一个Ajax.ActionLink,它在单击链接后显示它.由于添加此日期

我有一个ASP.NET MVC部分视图,其中包含一个配置为使用 JQueryUI中的datepicker的Html.TextBox.这是通过确保样式设置为.datepicker来完成的.这一切都很好.但是我已经将表单更改为Ajax.BeginForm并包含一个Ajax.ActionLink,它在单击链接后显示它.由于添加此日期选择器不会显示.实际上,从控制器返回部分视图后,现在甚至没有调用以前工作过的 JavaScript.即使我在部分视图本身中使用JavaScript / JQuery,它仍然不使用它.我真的很困惑,有人可以帮忙吗?

示例如下所示

<div id="claims">
        <div id="divViewClaims">
            <% Html.RenderPartial("ViewClaim",Model.Claims ?? null); %>
        </div>
        <br /><br />
        <div id="claim">
            <% Html.RenderPartial("AddEditClaim",new Claim()); %>          
        </div>
    </div>

Action Link,当clickon调用Controller Action返回PartialView时,在OnSuccess上调用的JavaScript触发,但没有别的,以前是由document.ready函数连接的.我的所有脚本都是单独的文件,并在母版页中引用.

<%= Ajax.ActionLink(string.Format("Add A{0} Claim",Model.Count > 0 ? "nother" : string.Empty),"AddClaim","Driver",new AjaxOptions { HttpMethod = "GET",UpdateTargetId = "claim",OnSuccess="showAddClaim" },new { @class = "ControlLink" })%>

控制器动作

public ActionResult AddClaim()
{
      return PartialView("AddEditClaim",new Claim());
}

部分视图,显示样式设置为datepicker的文本框

<% var ajaxOptions = new AjaxOptions { HttpMethod = "POST",UpdateTargetId = "divViewClaims",InsertionMode = InsertionMode.Replace,OnSuccess="hideAddClaim" }; %>
        <% using (Ajax.BeginForm("AddEditClaim","Claim",ajaxOptions,new { @name = "ClaimControl",@id = "ClaimControl" }))
           { %>

    <fieldset>  
        <legend><%= Model.Id==0?"Add":"Edit" %> Claim</legend> 
        <p>
            <label for="Title">Claim Date</label>
            <%= Html.TextBox("Date",Model.Date.ToString().TrimEnd('0',':',' ') ?? "",new { @class = "datepicker" })%>  
        </p>

我很感激任何帮助.

解决方法

如果元素是在document.ready之后创建的,那么你应该将元素重新匹配到jQuery.

查看jQuery Live

(编辑:商洛站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读