js调用后台方法问题:前台:<script type="text/javascript">

var person="<%=GetJson()%>";调用后台的方法

alert(person);//此时没有任何反应(即不弹出对话框)</script>如果这样:
<script type="text/javascript">

var person="……" //此处是一串json字符串

alert(person);//则此时可以弹出对话框</script>
后台方法:public string GetJson()
        {
            return JsonHelper.DataTableToJson("Person", GetDataSet().Tables[0]);
        }问题以下:如何在js里调用后台方法或属性(将方法改为属性也不行)

解决方案 »

  1.   

    是不是在jsp页面调用了c#的方法。这种用法还真没用过。帮你顶一下吧。
      

  2.   


    不是jsp页面,就是aspx页面!就是普通的asp.net开发,需要在前台调用后台的方法。网上说用以下方法可以的,但我却没有实现:<script type="text/javascript">
            
        var person="<%=GetJson()%>";//调用后台的方法
        
        alert(person);//此时没有任何反应(即不弹出对话框)</script>
      

  3.   

    GetJson()这个是方法,你看下方法里面有return返回值吗var person=<%=GetJson()%>;直接写 不加引号
      

  4.   

    public string GetJson()
            {
                return JsonHelper.DataTableToJson("Person", GetDataSet().Tables[0]);
            }
    这个是类方法,你得先new出类,然后.GetJson();
    得这么写<%=实例对象.GetJson()%>;
      

  5.   

    你看看生成的HTML代码是什么样的嘛
      

  6.   


    以下这个方法是在后置代码里的,即.cs文件里,与aspx文件是同一个,应该不需要new了吧?
    另外,GetJson()方法在调试时可以看到有返回值。