js带参数调用后台函数无效?

[复制链接]
查看11 | 回复7 | 2021-1-27 07:20:01 | 显示全部楼层 |阅读模式
是按网上的方法的,但后台的test()没有调用
//aspx:
//略...
abc



//cs:
//这个函数没有被y()调用
publicstringtest(stringk)
{
Response.Write("");
returnk+"dd";
}

分 -->
回复

使用道具 举报

千问 | 2021-1-27 07:20:01 | 显示全部楼层
“是按网上的方法的”你最好给出这个网上的地址出来。
单看你的代码,这个设计思路肯定是错的。asp.net只是在页面生命周期的Render阶段执行'这样的代码,然后服务器端页面对象就瞬间就彻底销毁了,不再存在了,不可能“被调用”。你打开浏览器端的html源代码,可以找找看有没有test函数。javascript也许不给你报错,或者你的浏览器把javascript报错信息给“吃”掉了,让你一头雾水。
有人——特别是一些博客作者——说什么“的形式来刷新页面的,你可以看看你自己的的asp.net教程上是如何来处理提交数据之前先Confirm确认的,按照它的方式来编你的程序,先不要自己乱试验。
回复

使用道具 举报

千问 | 2021-1-27 07:20:01 | 显示全部楼层
由于从原理上可以看出“相差十万八千里”,所以我给你一些初步提示。再你稍微多了解一些原理之前,更深的也没法跟你说。
这种不依据原理来设计程序的方式,将会让你不断犯错误。所以你自己要先搞懂问题的根源。
回复

使用道具 举报

千问 | 2021-1-27 07:20:01 | 显示全部楼层
以传统的asp.net的机制,要想在前端直接“调用后台页面”,需要走正规的回发机制、按照asp.net页面本身的接口和架构来编程。我6年前回复过一个帖子,随便写过一段demo程序http://bbs.csdn.net/topics/360064587。但是我估计这钟知识对于你来说是太早了,起码你要在1年或者大半年之后才能学到,现在还是踏实地按照入门书的例子去学习。
另外一种潮流,其实asp.net(不论是webform还是asp.netmvc)都没用了,现在是“富客户端编程”时代,我们早在几年前对asp.net程序员的要求就是服客户端开发技术,而不是要求传统的那些了。那么客户端javacript应用代码需要通过ajax来访问asp.net服务器端的轻量级的数据服务,例如访问ashx,跟aspx毫无关系。此时它也不叫做“调用后台函数”,而是另外一套web前端访问asp.net数据服务的模式。如果你现在在学习asp.net传统的开发,那么你在学习完毕之后,需要重新学习web前端开发,现在还不行。
回复

使用道具 举报

千问 | 2021-1-27 07:20:01 | 显示全部楼层
Response.Write("");其他的错没错,我不知道,但是这里我感觉是错了,
多注意细节,这种代码自己写都可以,何必去网上找些不对的代码,js是没有报错的说法的,无效肯定是写错了,哪里没用上,就是哪里写错了,我每次逛论坛都能看见楼上这个说什么原理,小白不懂
回复

使用道具 举报

千问 | 2021-1-27 07:20:01 | 显示全部楼层
js里边不能调用后端代码方法
回复

使用道具 举报

千问 | 2021-1-27 07:20:01 | 显示全部楼层
js是前台页面里执行的,并不能执行后台程序,除非form提交或ajax
回复

使用道具 举报

千问 | 2021-1-27 07:20:01 | 显示全部楼层

js:
varInstance=this;
this.BackgroundInvoke=页面地址,比如:a.web.b;
调用后台方法
varstr=Instance.BackgroundInvoke.方法名(参数);
后台方法:
[AjaxPro.AjaxMethod]
publicvoidupdateProjectIsReview(stringa)
{
....操作
}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行