调用JavaScript函数和ASP.NET的返回值

问题描述 投票:1回答:8

比方说我的网页上我有这样的功能:

 function ReturnFoo(bar)
 {
   return bar.toString() + "foo";
 }

现在,我想有从ASP .NET这个叫,希望与ASP .NET AJAX框架,因为我已经在这个代码库使用它(我已经花了100K的,还不如用它)。

另外,我想找回那种从该函数返回的输出,然后将其分配给在服务器端创建的变量。而这仅限于ASP.NET 2.0中

asp.net asp.net-ajax asp.net-2.0
8个回答
1
投票

是啊,这是一个艰难的一个。使用MS的Ajax会帮你出位。你需要在代码中推动从服务器到呼吁页面加载这一功能和返回值分配给可通过在服务器上后访问回来的隐藏字段。

我必须说,这个解决方案很烂,但我不知道另一种方式。希望有人将有一个更好的解决方案。


1
投票

写简单,你必须调用JavaScript

的Response.Write( “警报( '你好');”)


0
投票

我不看你怎么指望服务器端的代码来调用客户端的功能???

AJAX调用是从客户端向服务器端!


0
投票

我已使用标记为隐藏与变化自动回文本控件这样做过。然后,函数设置控制触发回发的文字。

若要调用从服务器端的功能,简单地注册一些启动脚本和页面呈现时,它将会运行。


0
投票

如果你的意图是重复使用了服务器端和客户端的一些功能,我建议写在服务器端(ASPX或ASMX),其功能和使用AJAX客户端(JavaScript)调用它。不知道你是否正在寻找此。


0
投票

你的服务器端和客户端之间转换任何时候,它就像用户在性能方面点击浏览器的刷新按钮。

那是你想做的事,因为你提出的方案将意味着至少两个后背上算不上什么。

这样做的目的是什么?这将是更好,如果你能保持这种在客户端。


0
投票

在第一个答案,马特提到,这是不可能的(要同时仍然执行服务器上的客户端代码)。这是真的。

你有关Silverlight的评论是不是真的准确。 Silverlight可以不从服务器调用客户端代码。 Silverlight的运行在客户端一样的JavaScript,所以这是一个客户端到客户端调用。

你能澄清情况有点...这就是我想你问:

private void Page_Load()
{
    string someValue = EXECUTE_JS_ON_CLIENT_AND_GET_RESULT();

    // do some stuff here while still on the server...
}

如果这是你想做的事,这是不可能的。在服务器上,你无法与客户端进行通信。

这是你的意思吗?

谢谢,-Timothy


0
投票

我想看看JSON.Net(带库相结合[jQuery的也是免费])他们的开源解决方案,使这些问题容易得多。

© www.soinside.com 2019 - 2024. All rights reserved.