例如,当用户点击<button>
时,我知道服务器端的事件处理程序将会执行
但是客户端如何举办活动?由于初始页面(使用GET
)在客户端纯粹是html,因此javascript引发的事件是什么?
如果是,是否意味着 .aspx 将首先在客户端自动生成javascript代码?
例如,我在 .aspx 页面上有一个asp按钮:
<asp:Button ID="btnCalculate" runat="server" Text="Calculate" Width="122px" OnClick="btnCalculate_Click" />
OnClick
表示这是javascript事件,但我在哪里可以找到适用的javascript代码?
答案 0 :(得分:5)
<asp:{Control>}>
是所有服务器端控件,您看到的onclick事件不是正确的html表示。
<asp:Button ID="btnCalculate" runat="server" Text="Calculate" Width="122px" OnClick="btnCalculate_Click" />
会产生类似这样的东西:
<input id="btnCalculate" type="submit" value="Calculate"/>
指服务器上的回调(发布/获取请求),然后调用View asp.net c#代码(.aspx.cs)中定义的btnCalculate_Click()
:
public void btnCalculate_Click(object sender, EventArgs e){
...
}
相比之下,此c# ASPX代码会直接转换为相同的html“代码”:
<button id="btnCalculate" onClick="btnCalculate_Click()"/>
因此,它会告诉客户端(浏览器引擎)查找适用的javascript函数(例如,在您的site.js
或任何其他提供的javascript资源中):
function btnCalculate_Click(){
alert("This is client side scripting");
}
答案 1 :(得分:0)
我认为你必须修改Client-Server-Paradigm
。
客户端发出请求,然后服务器接受此请求 结果,服务器向客户端发送“回答”(响应),然后由客户端接收。