Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
部分视图MVC Jquery不工作_Jquery_Css_Model View Controller - Fatal编程技术网

部分视图MVC Jquery不工作

部分视图MVC Jquery不工作,jquery,css,model-view-controller,Jquery,Css,Model View Controller,我有一张桌子。我将返回一个行列表,其中一行中有一个按钮。此按钮有一个名为“password”的类。我正在将单击事件附加到此类。每次用户点击这个按钮,我都会进行一个ajax调用,从服务器获取密码,并在单元格中显示它 问题是,每当我返回部分视图(虚拟分页、返回更多行、过滤记录或排序)时,单击事件就不再起作用 这是我的javascript $('.password').click(function () { var self = $(this); va

我有一张桌子。我将返回一个行列表,其中一行中有一个按钮。此按钮有一个名为“password”的类。我正在将单击事件附加到此类。每次用户点击这个按钮,我都会进行一个ajax调用,从服务器获取密码,并在单元格中显示它

问题是,每当我返回部分视图(虚拟分页、返回更多行、过滤记录或排序)时,单击事件就不再起作用

这是我的javascript

 $('.password').click(function () {
            var self = $(this);
            var accountID = $(this).attr('data-id');
            var route = {
                serverAction: 'GetDecryptedPassword',
                args: {
                    ID: accountID
                }
            };

            App.getJSON(self, route, function (sender, data) {
                $("#" + accountID).html(data);
            });

            return false;
        });
我猜一旦部分视图刷新了元素,处理程序就不再附加。它需要重新连接吗


任何帮助都将不胜感激

您需要委派活动

$(staticContainer).on('click', '.password', function () {
加载脚本时,事件始终附加到页面上的元素。因此,当您使用Ajax获取其他行时,这些行仍然不存在


因此,这些事件不受这些元素的约束。因此,如果您将事件委托给静态容器,您基本上是在侦听该容器上的事件,当单击事件发生时,事件将冒泡到父容器并触发事件。

我找到了一个解决方案:

试着做:

$(document).on("click", "YOUR_SELECTOR", function(e){
  /// Do some stuff ...
});
而不是:

$("YOUR_SELECTOR").on("click", function(e){
  /// Do some stuff ...
});

尝试使用
.on()
--
$(文档)绑定处理程序。on('click','.password',function(){
--让我们知道这是否有效。..on()似乎有效。太好了。谢谢。很好,Sushanth有相同的答案,请标记它。您能解释为什么这是必要的吗?