您的位置:程序门 -> .net技术 -> asp.net



如何定义ajaxpro?


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


如何定义ajaxpro?[已结贴,结贴人:heguochang]
发表于:2007-03-25 21:38:59 楼主
我以经在添加引用中添加了ajaxpro.dll为什么我的jscript代码里还是报 "ajaxpro "未定义呀?请各位帮忙!
发表于:2007-03-25 21:46:081楼 得分:0
jscript中提示?

后台写typeof等等没.
发表于:2007-03-25 21:50:502楼 得分:20
在web.config中要配置.
在叶面的page_load中要注册.
发表于:2007-03-25 21:51:083楼 得分:0
我后台写了
using   ajaxpro;

        protected   void   page_load(object   sender,   eventargs   e)
        {
                utility.registertypeforajax(typeof(ajaxmethod));
        }
发表于:2007-03-25 21:51:304楼 得分:0
在web.config里配置:
<httphandlers>
<add   verb= "* "   path= "*.ashx "   type= "ajaxpro.ajaxhandlerfactory,ajaxpro "/>
</httphandlers>

然后在页面的page_load里要加上
ajaxpro.utility.registertypeforajax(typeof(xxclass));

最后js里的命名空间和类名方法名要保证正确就ok了
发表于:2007-03-25 21:52:275楼 得分:0
在web.config中怎么配置呀?
发表于:2007-03-25 21:52:426楼 得分:0
cs:

[ajaxpro.ajaxmethod]
public   datetime   getservertime()
{
return   datetime.now;
}
发表于:2007-03-25 21:52:467楼 得分:0
楼主贴出aspx页面的前几句话看看.
发表于:2007-03-25 22:00:028楼 得分:0
<script   language= "jscript ">
function   el(id)
                        {
                        return   document.getelementbyid(id);
                        }
function   expandsubcategory(icategoryid)
{
var   li_father   =   el( "li_ "   +   icategoryid);
if   (li_father.getelementsbytagname( "li ").length   >   0)   //分类已下载
{
changestatus(icategoryid);
return;
}

li_father.classname   =   "opened ";

switchnote(icategoryid,   true);
ajaxmethod.getsubcategory(icategoryid,   getsubcategory_callback);
}

function   getsubcategory_callback(response)
{
var   dt   =   response.value.tables[0];
if   (dt.rows.length   >   0)
{
var   icategoryid   =   dt.rows[0].fatherid;
}
var   li_father   =   el( "li_ "   +   icategoryid);
var   ul   =   document.createelement( "ul ");
for   (var   i   =   0;i   <   dt.rows.length;i++)
{
if   (dt.rows[i].ischild   ==   1)   //叶子节点
{
var   li   =   document.createelement( "li ");
li.classname   =   "child ";
li.id   =   "li_ "   +   dt.rows[i].categoryid;

var   img   =   document.createelement( "img ");
img.id   =   dt.rows[i].categoryid;
img.classname   =   "s ";
img.src   =   "styles/tree_css/s.gif ";

var   a   =   document.createelement( "a ");
var   id   =   dt.rows[i].categoryid;
a.onmouseover   =   function()
{
previewimage(id);
};
a.href   =   "javascript:opendocument( ' "   +   dt.rows[i].categoryid   +   " '); ";
a.innerhtml   =   dt.rows[i].categoryname;
}
else
{
var   li   =   document.createelement( "li ");
li.classname   =   "closed ";
li.id   =   "li_ "   +   dt.rows[i].categoryid;

var   img   =   document.createelement( "img ");
img.id   =   dt.rows[i].categoryid;
img.classname   =   "s ";
img.src   =   "styles/tree_css/s.gif ";
img.onclick   =   function   ()   {
expandsubcategory(this.id);
};
img.alt   =   "展开/折叠 ";

var   a   =   document.createelement( "a ");
a.href   =   "javascript:expandsubcategory( "   +
dt.rows[i].categoryid   +   "); ";
a.innerhtml   =   dt.rows[i].categoryname;
}
li.appendchild(img);
li.appendchild(a);
ul.appendchild(li);
}
li_father.appendchild(ul);

switchnote(icategoryid,   false);
}

//   叶子节点的单击响应函数
function   opendocument(icategoryid)
{
//   预加载信息
preloadformurl(icategoryid);
}

function   previewimage(icategoryid)
{

}

function   changestatus(icategoryid)
{
var   li_father   =   el( "li_ "   +   icategoryid);
if   (li_father.classname   ==   "closed ")
{
li_father.classname   =   "opened ";
}
else
{
li_father.classname   =   "closed ";
}
}

function   switchnote(icategoryid,   show)
{
var   li_father   =   el( "li_ "   +   icategoryid);
if   (show)
{
var   ul   =   document.createelement( "ul ");
ul.id   =   "ul_note_ "   +   icategoryid;

var   note   =   document.createelement( "li ");
note.classname   =   "child ";

var   img   =   document.createelement( "img ");
img.classname   =   "s ";
img.src   =   "styles/tree_css/s.gif ";

var   a   =   document.createelement( "a ");
a.href   =   "javascript:void(0); ";
a.innerhtml   =   "请稍候... ";

note.appendchild(img);
note.appendchild(a);
ul.appendchild(note);
li_father.appendchild(ul);
}
else
{
var   ul   =   el( "ul_note_ "   +   icategoryid);
if   (ul)
{
li_father.removechild(ul);
}
}
}

//   加载根节点
var   tree   =   el( "categorytree ");
var   root   =   document.createelement( "li ");
root.id   =   "li_0 ";
tree.appendchild(root);

//   加载页面时显示第一级分类
expandsubcategory(0);

function   preloadformurl(icategoryid)
{
//   采用同步调用的方式获取图片的信息
var   ds   =   ajaxmethod.getformslist(icategoryid).value;
//   如果返回了结果
if   (ds)
{
//   判断数据表是否不为空
if   (ds.tables[0].rows.length   >   0)
{
//   返回的信息数据表
dt   =   ds.tables[0];
el( "main ").src   =   dt.rows[0].formurl;
}
else   //   分类下没有
{
}
}
}
</script>

谢谢各位的帮助
我添加了:
<httphandlers>
<add   verb= "* "   path= "*.ashx "   type= "ajaxpro.ajaxhandlerfactory,ajaxpro "/>
</httphandlers>

但现在又报
value.tables   为空或不是对象

发表于:2007-03-25 22:17:099楼 得分:0
学习一下!收藏!
发表于:2007-03-25 22:52:0410楼 得分:0
把你getsubcategory贴出来看看吧.
getsubcategory方法返回了null,所以报那个错误.
发表于:2007-03-26 08:02:2211楼 得分:0
[ajaxmethod(httpsessionstaterequirement.readwrite)]
        public   static   dataset   getsubcategory(int   icategoryid)
        {
                string   sql   =   string.format( "select   categoryid,   categoryname,   fatherid,   dbo.isleaf(categoryid)   as   ischild   from   category   where   fatherid   =   {0} ",   icategoryid);
                return   datahelper.getdataset(sql);
        }
发表于:2007-03-26 08:02:5612楼 得分:0
public   static   dataset   getdataset(string   sql)
        {
                sqlconnection   con   =   new   sqlconnection( "server=134.164.72.5;database=test2;uid=sa;pwd=990988 ");
                con.open();
                sqldataadapter   sda   =   new   sqldataadapter(sql,   con);
                dataset   ds   =   new   dataset();
                sda.fill(ds);
                if   (ds   !=   null)
                        return   ds;
                else
                        return   null;
        }
发表于:2007-03-26 09:12:2613楼 得分:0
我的后台一般这么写.
      [ajax.ajaxmethod()]
        public   datatable   getcontractdataforajax(string   part1id)
        {
                string   sql   =   "select   part1contractid,   part1id,   projectnamenumber,   contractamount,wagedecisionnumber,convert(varchar(10),wagedecisionlockdate,101)   as   wagedecisionlockdate ";
                sql   +=   "   from   hudpart1contractawarded   where   part1id= "   +   part1id;
                dataset   ds   =   sqlhelper.EXECutedataset(sqlhelper.connectstring,   commandtype.text,   sql);
                return   ds.tables[0];
        }
发表于:2007-03-26 09:36:2414楼 得分:0

在web.config里配置:
<httphandlers>
<add   verb= "* "   path= "*.ashx "   type= "ajaxpro.ajaxhandlerfactory,ajaxpro "/>
</httphandlers>

然后在页面的page_load里要加上
ajaxpro.utility.registertypeforajax(typeof(xxclass));

最后js里的命名空间和类名方法名要保证正确就ok了
发表于:2007-03-26 13:34:1515楼 得分:0
ajaxpro已经过时了..


快速检索

最新资讯
热门点击