后台方法:
    public string test(string str)
    {
        string[] re = str.split('|');
        return re[0];
    }
前台要调用这个带参数的方法:
var par = window.opener.getParTxtValue();
var re = '<%=test("'+par+'") %>'
调试中发现str值拿不到,但如果把test方法改成简单的方法时虽然调试中str值也拿不到,但能上返回处理后的值
    public string test(string str)
    {
        return str+str+"这是结果!";
    }问题出来了,要怎样解决前台调用后台一个带参数的复杂方法,如上面的test方法
项目需求是一个资源发布页面有一个'预览'按钮,用户点预览时弹出一个新窗口,在新窗口中我用js能获取到资源发布页面中txtBox控件的值。var par = window.opener.getParTxtValue();但有一个值要到后台去处理下即要调用后台方法test(string str)。

解决方案 »

  1.   

    只有用Ajax异步实现吗,有没有其它办法,我开始就是不想用Ajax异步实现才找到这个方法的,哎!这只是个简单功能啊
      

  2.   

    ustbwuyi回的我不懂,真的行的话,能说具体点吗
      

  3.   

     <script language="javascript" type="text/javascript">
        var a="d";
        document.write("<%=GetNum("+a+")%>");
        </script>
    后台
    public string GetNum(string a)
        {
            if (a == "a")
            {
                return "c";
            }
            else
            {
                return "b";
            }
        }
      

  4.   

    我的问题就是说var a="d";这个变量在后台断点调试时看不到结果的啊,你的后台方法GetNum()是个简单的函数,如果换成
        public string test(string str) 
        { 
            string[] re = str.split('|'); 
            return re[0]; 
        } 
    这样的函数就不能返回正确值的啊,看清楚问题再回答,OK!