日期:2014-05-17  浏览次数:20505 次

asp.net 利用js 做无刷新效果,返回js函数中无法删除或隐藏行!
前台js
HTML code


 //执行后台 删除数据方法   
        function deldataa(str)
        {
            if (str!= "")
            {
            str="delete|"+str;
              delCallServer(str,"");
            }
        }
        //获取后台返回结果
        function delReceiveServerData(retrunValue, context)
        {   
            var retdata=retrunValue.split('|')[0];
            var retdata1=parseInt(retrunValue.split('|')[1]);
            if(retdata=="1")
            {
                 
               [color=#FF9900]  就下面这里不管是隐藏行 还是删除行都会报错,难道这里不能写么? 那个高手帮忙解决下!!![/color]
                //var tb = document.getElementById("mytable");
                //tb.Rows[55].Style.Display= "none"; 
                //tb.deleteRow(retdata1);
                alert("成功删除,编号为:"+retdata1+"的数据!");
            }
        }





后台 方法

C# code

public void RaiseCallbackEvent(string eventArgument)
    {
        //此方法是回调时间的事件处理程序
        //它只能接受一个字符串自变量,而不像一般的事件处理程序会接受两个自变量
        string str0 = eventArgument.Split('|')[0];
        string strr = "";
        switch (str0)
        {
            case"select":
                returnValue = selectdata(eventArgument.Split('|')[1],int.Parse(eventArgument.Split('|')[2]));
                break;
            case "delete":
                strr = eventArgument.Split('|')[1];
                returnValue = deldate(strr) + "|"+strr;
                break;
            case "update":
                break;
        }
    }

    public string GetCallbackResult()
    {
        //此方法负责将回调结果返回给客户端
        //此方法不接受任何自变量,只会返回一个字符串
        return returnValue;
    }





------解决方案--------------------
你都没有判断AJAX的返回状态.怎么知道成不成功.
------解决方案--------------------
要学会自己去debug的,现在有很多浏览器都自带js的 debug功能的

var tb = document.getElementById("mytable");
tb.rows[55].style.display= "none";
------解决方案--------------------
$("#mytable").remove();
------解决方案--------------------
tb.rows[55].style.display= "none"; 小写

然后看看var tb = document.getElementById("mytable");取到表格没有

var retdata1=parseInt(retrunValue.split('|')[1]);
这个retdata1是不是有效的值