0

在这个“onclick”工作但它没有调用javascript函数。请帮助如何同时执行onclick和onclientclick。

<asp:Button ID="btnFare"  OnClientClick="return initialize();"  runat="server"  Text="Calculate Fare" onclick="btnFare_Click"/>

请提出解决此问题的方法。

提前致谢

4

4 回答 4

1

在您发布更多代码之前,很难说出了什么问题。当我遇到这个问题时,我检查了几件事:

1)我正在调用的javascript实际上是在页面中吗?(这对于初学者来说可能会有问题,因为有几种方法可以在他们的页面中包含 javascript,有时他们认为他们的 javascript 在页面中,而实际上并非如此。)

2) 当我调用 javascript 时,控制台中出现什么错误?当我将 console.log('some text') 包含在我的函数中时,我可以看到它的输出吗?

3) 我的 javascript 是否真的触发了,但我错过了它,因为我有一个服务器端事件在它之后触发?

4) onClientClick 函数是否返回布尔值?在这种情况下,这很重要,因为如果它返回 true,服务器端的 onClick 事件将触发。如果它返回 false,服务器端事件将不会触发。

这些只是需要检查的几件事。你可能想检查一下Firebug——它在调试这样的事情时非常棒。

于 2012-04-07T16:13:15.830 回答
0

如果你想btnFare_Click被解雇,那么initialize();必须return true

我建议你添加initialize()这样的page_Load

btnFare.Attributes.Add("onclick","return initialize();");

而不是这样:

OnClientClick="return initialize();"
于 2012-04-07T15:34:26.303 回答
0

确保initialize();返回true. 事件处理程序可以返回一个布尔值(truefalse),false意思是:“不采取默认操作”。

如果您有任何 js 错误,请检查 javascript 控制台。

于 2012-04-07T15:35:19.083 回答
0

问题肯定出在您的 initialize() 函数中。我认为这是错误的。

如果您没有问题,请让我们查看源代码。

或者你可以把alert(yourreturnvariable);

作为函数的最后一行,检查它是否真的返回 true。

于 2012-04-08T05:28:22.060 回答