从aspx.cs调用jQuery函数

时间:2011-07-28 02:36:01

标签: jquery asp.net

我有一个jQuery函数来在asp.net登录页面中显示验证消息。 我把脚本放在一个名为login.js的单独文件中(我从html调用了js文件) 函数的名称是loginMessage();

我需要知道如何在按钮单击事件中从aspx.cs调用它。我试图直接在按钮点击事件中调用该函数,例如:

protected void btnLogin_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{ 
  ...........
  The login validation process goes here
  ...........

  if (ds.Tables.Count == 0)
  { 
       loginMessage();
  } 
}

但是当我尝试调试页面时,我收到以下错误消息:

  

类名称'loginMessage'在类或名称空间'School.Login'中不存在

请帮我解决这个问题。 此致,安达

4 个答案:

答案 0 :(得分:2)

这应该可以解决问题:

btnLogin.Attributes.Add("onclick", "return loginMessage();");

此处的其他示例: http://www.devcurry.com/2009/01/execute-javascript-function-from-aspnet.html

答案 1 :(得分:1)

你不能在aspx页面的代码中调用JS函数。

而是使用aspx / ascx页面中OnClientClick的{​​{1}}属性来触发JS函数。

类似......

btnLogin

编辑:根据OP对问题的修改更新答案。

要在页面加载时调用js方法,请尝试:

<asp:Button id="btnLogin" runat="server" OnClientClick="return loginMessage()" .../>

答案 2 :(得分:0)

使用关键字“asp.net button client”在Google上搜索后的第一个结果指向此网站http://msdn.microsoft.com/en-us/library/7ytf5t7k.aspx#Y570 这会对你有所帮助。

答案 3 :(得分:0)

您可以使用ScriptManagerClientScriptManager

一个例子:

protected void btnLogin_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{ 
  ...........
  The login validation process goes here
  ...........

  if (ds.Tables.Count == 0)
  { 
       Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "ValdationMessage", "loginMessage();", true);
  } 
}