【问题标题】:Dealing with partial views and javascript处理部分视图和 javascript
【发布时间】:2013-03-09 00:27:08
【问题描述】:

我设置了一个局部视图以在索引页面中呈现。当用户单击排序按钮时,部分视图使用 Ajax 发布到服务器。这样整个页面不会只刷新部分视图表。

问题是在第一次排序后,索引页面中的 JavaScript 不再有效。我通过将 js 放在局部视图本身中以持久化事件来解决这个问题,但这会产生 js 错误,说“继续”或“忽略”。

【问题讨论】:

    标签: javascript ajax asp.net-mvc partial-views


    【解决方案1】:

    这是因为您新注入的元素(通过 ajax)不知道有界的事件。所以这些事件绑定对他们来说是不可用的。

    您应该将事件绑定更改为使用on,以便它处理当前元素和未来元素(通过 ajax 等动态添加到 DOM)

    例如,如果您想为 css 类 someCssClassSelector 的元素处理 click 事件,

    改变

    $(".someCssClassSelector").click(function(){
      //do something
    });
    

    $(document).on("click",".someCssClassSelector",function(){
      //do something
    });
    

    【讨论】:

    • 那行得通,如果我需要持久化一个“滚动”事件是可能的,那是另一个需要持久化的功能。我会更新问题。
    • @RayEatmon:不要更新问题。发布为具有相关详细信息的新问题
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-25
    • 2011-05-26
    • 1970-01-01
    • 2015-11-30
    • 1970-01-01
    相关资源
    最近更新 更多