我正在尝试创建一个文本框,在按下按键后更新其中的文本,因此我在页面的类中创建了一个程序来执行我想要的功能。该程序工作正常,我的问题是当 onkeypress 事件发生时如何在 javascript 函数中调用该程序:
//我的文本框:
<asp:TextBox ID="MyBox" onkeypress="AutoText(); return false;" runat="server"
Width="400px" ToolTip="Text?" CausesValidation="True" AutoPostBack="True">
</asp:TextBox>
//我的函数
function AutoText()
{
var i;
i = Class1.BoxTextChanged(object sender, EventArgs e);
}
我知道这个函数不起作用,这不是如何从 JavaScript 中的 C# 类调用程序,我只是问是否可以做到这一点。
请注意,我已经尽可能多地研究了这个问题,也许我所做的搜索没有用,因为这个主题有太多主题,或者也许我只是做错了:P
最佳答案
您正在混合客户端和服务器端。 ASP.NET从服务器端执行,Javascript从客户端执行。
因此,在您的情况下,您无法直接从 Javascript 调用 ASP.NET 函数,因为服务器无法访问客户端文本框。
您的解决方案是用 Javascript 编写此函数。可能是这样的:
function boxTextChanged(text) {
getElementById('textBoxToUpdate').value(text);
}
顺便说一句,我只是想补充一点,你可以使用ajax在Javascript中直接调用ASP.NET,但服务器端永远无法直接更新DOM在客户端。通常使用ajax从服务器获取数据。
关于c# - 从 javascript 函数调用 .cs 文件内的程序以实现 onkeypress 函数 ASP.net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22171276/