箭头指示的地方,没有定义那个标签ID 跪求解决方法…………

解决方案 »

  1.   


    应该是根据你点击触发的东西,找到对应数据所在dom,然后实现remove dom,如果要重新加载数据的话,就应该是删除成功后执行ajax的重新获取页面数据方法
      

  2.   

    回调函数success里面remove掉所有数据再加载数据,或者刷新一下页面(window.location.reload())。
      

  3.   

    你的 htmd(data)是什么意思?
    不是应该删除对应dom所在的行吗
      

  4.   

    我觉得是你data返回的数据就不准确吧,你看一下后台,删除时候返回的data有没有重新赋值过
      

  5.   

    先去看看数据库的记录是否真的被删除了。如真是被删除了。
    前端你可以刷新一下数据,或是直接移除这行即可。 var tr = $(this).closest("tr");
     tr.remove();
      

  6.   

     http://knockoutjs.com/examples/gridEditor.html为例,你可以看到在 mvvm 前端框架为基础的编程设计,删除功能就是将属性(函数)    self.removeGift = function(gift) {
            self.gifts.remove(gift);
        };
    在 html 上声明一下<a href='#' data-bind='click: $root.removeGift'>Delete</a>这样当按钮被按下,gifts 数组中的数据行就被自动删除了,而界面就会自动显示出删除后的样子。
      

  7.   

    你只要抛开界面先定义好你的数组,然后将数组的 remove 跟界面上的按钮绑定,就设计完毕了!你不需要去到处去写代码去找 dom 在那里,不需要过度写代码。
      

  8.   

    富客户端的编程设计,整个是以前端为核心的。这就相当于 winform、WPF 的编程设计一样,是以交互界面为核心的。你不应该从服务器端返回什么 html。服务器端就应该专心做好业务数据处理,返回一个“true"或者一个”ok"标记说明删除成功就行了。整个界面处理都在前端,跟服务器端无关。至于说找到“定义那个标签ID”,这实际上是 MVP 跟 MVVM 框架理念的截然不同。MVP 方式是在各种事件中,编写大量代码去查找各种各样的 DOM 元素。而 MVVM 理念是说,你在声明 html 模板时简单地绑定声明一下,不用写 js 代码!你选则哪一种理念来架构你的前端程序的基础呢?
      

  9.   

    比如说上面的例子中绑定的按钮操作,如果加上 ajax 请求,可能就是改为     self.removeGift = function(gift) {
          jQuery.ajax(........
            data: {id: gift.keyId},
            success: function(){
                 self.gifts.remove(gift);
            }
          });
        };修改数据,而不是去修改界面 html。丰富的界面,是在模板上绑定到数据的。你并不需要对界面编程序,你只要对基本数据 ViewModel 编写增删改的几行代码,界面就自动变了。
      

  10.   

    windows.location.onload() 
      

  11.   

    window.location.reload(true); 当前页 
    其他页就直接跳转过去
      

  12.   

    如果要重新创建整个页面,还要用 ajax 干嘛呀?传统的 <form> 回发才是刷新页面的。用 ajax 提交数据访问,就别往动不动重建整个页面的方式上靠,否则学点 ajax 编程技术等于白干。
      

  13.   

    深一步来说,建议的方式是,一旦你走上这条路,就尽量网比较专业的前端“富客户端编程”技术上学习,不要走中间路线。走中间路线是既失去了 asp.net 的服务器端开发的更富功能,又没有理解现代的纯前端的编程思路,非常尴尬。