【发布时间】:2018-04-03 09:29:21
【问题描述】:
我在 JavaScript 中有大约 10 到 12 个函数。我想在这些函数使用的控制、获取、聚焦和其他函数时调用其中的 2 或 3 个。
我拥有虚拟键盘的所有这些功能......我想在母版页上添加虚拟键盘(我已经使用 HTML 表单在 JavaScript 中创建了虚拟键盘)。
我已经将该代码添加到母版页中,并且我的键盘正在工作,但它只适用于简单的 HTML 控件(即,没有 runat="server" 属性)。当我添加 runat="server" 时它不起作用。
我不知道如何从内容或子页面调用此函数。
我的代码如下:-- (我在母版页中添加的 JavaScript 代码...这是代码的一部分(不完整))
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="MasterPage2.master.cs" Inherits="MasterPage2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
<script language="javascript" type="text/javascript">
function setId(el) {
id = el;
//alert(el);
document.getElementById(id).focus();
reset();
return 0;
}
function restoreCode(evt) {
ButtonUp(kcode);
}
function writeKeyPressed(evt) {
InsertChar('k', kcode);
return false;
};
function InsertChar(mode, c) {
document.getElementById(id).focus();
}
function ButtonDown(c) {
reset();
}
function ButtonUp(c) {
//codes
resets();
}
function Shift() {
//codes
}
</script>
当我从 HTML 控件 not 在代码中具有 runat="server" 属性的内容页面调用它时,它将起作用。
<input id="txt_pwd" type="password" onfocus="setId('txt_pwd');" />
当我从内容页面(即代码中具有runat="server" 属性的 ASP 控件)调用它时,它将不起作用。
<input id="txt_pwd" type="password" onfocus="setId('txt_pwd');" runat="server" />
请任何人告诉我一个解决方案,我将使用来自内容页面的服务器端控件调用我的函数(在母版页上)。
【问题讨论】:
-
您需要更多说明才能得到帮助:请包括您如何称呼它的示例。你得到什么错误? “它不起作用”的详细含义是什么?另外,您如何使用没有 runat="server" 的 asp 控件?
-
请详细说明。
-
@MikeSmithDev ..对不起,它只是没有 runat="server" 的 html 控件......而且它不起作用意味着......当我按下我的虚拟键盘时,键写在文本框上这种情况不会发生这种情况......
-
@CodeRider 我正在使用虚拟键盘...我正在处理两种不同的方式。1 使用 imagemap(html),即用户单击该按钮并将字符写入文本框.. 2 是用户直接在文本框上书写,我将显示相对于该文本框的 uincode……例如……谷歌翻译器提供的印地语(非英语)语言键盘
标签: javascript asp.net master-pages