0

我想从 java 脚本函数中调用 .cs 文件的函数。从 javascript 函数中,我还想将一个参数传递给函数后面的代码。以下是这两个文件的代码。提前致谢。

In demo.aspx
<script>
function getValue(id)
{
   "<%getData(id);%>"
} 
</script>

In demo.aspx.cs
public void getData(string s)
{
  //code to work on string.
}

我收到错误,即“id”未在 demo.aspx 文件中声明。

4

2 回答 2

1

您可以在 Web 表单中使用名为 btnSave 的按钮尝试此操作,例如:

<input type="button" id="btnSave" onclick="javascript:SaveWithParameter('Hello User')"  value="click me"/>

<script type="text/javascript">
  function SaveWithParameter(parameter)
   {
     __doPostBack('btnSave', parameter)
   }
</script>

在你的代码后面添加类似页面加载的内容

public void Page_Load(object sender, EventArgs e)
{
  string parameter = Request["__EVENTARGUMENT"]; // parameter
 // Request["__EVENTTARGET"]; // btnSave and do your work
}

希望能帮助到你

于 2013-07-25T05:48:37.440 回答
0

getData 是一种服务器端方法,因此如果您想从客户端调用它,一种可能的方法是使用 AJAX 调用并将服务器上的方法标记为脚本可调用。

如果您使用的是 ScriptManager,一旦您将页面方法标记为WebMethod,您就可以使用 PageMethods 变量从 javascript 访问它,请参阅http://www.singingeels.com/Articles/Using_Page_Methods_in_ASPNET_AJAX.aspx

如果您想使用 jQuery 执行此操作,请查看此帖子 http://encosia.com/using-jquery-to-directly-call-aspnet-ajax-page-methods/

于 2013-07-25T05:33:56.157 回答