我用下面的示例代码创建了一个虚拟键盘。
<script type="text/javascript">
function vkb(vap){
document.forms["virtual"]["text"].value += vap;
}
</script>
<form name="virtual">
<input type="text" name="text"/>
<input type="button" onclick="vkb('a')" value="a" style="border:none;"/>
</form>此代码无法接受', and \符号。然后我用下面的方式修改了我的代码
<script type="text/javascript">
function vkb(vap){
document.forms["virtual"]["text"].value += vap;
}
function vkb1(){
document.forms["virtual"]["text"].value += "'";
}
</script>
<form name="virtual">
<input type="text" name="text"/>
<input type="button" onclick="vkb('a')" value="a" style="border:none;"/>
<input type="button" onclick="vkb1()" value="'" style="border:none;"/>
</form>现在,我终于有了问题,只有\,我不能添加这个笔划使用我的虚拟键盘。有人能帮我把\添加到textbox吗?其他任何人,请提供给我使用ASCI值添加\的语法。
发布于 2011-10-15 02:33:24
我不知道你是否包含了足够的细节来回答你的问题。但请记住,'\‘字符在javascript中用作转义字符。这意味着你有时需要加倍,有时甚至更多,这取决于你要通过多少层解释:
尝试'\‘在代码中加入一个斜杠,或者尝试'\\’得到两个斜杠,这会将一个斜杠传递到另一层。
发布于 2011-10-15 02:29:07
太长,未读:-)
试试这个:
<script type="text/javascript">
function vkb(vap)
{
document.forms["virtual"]["text"].value += vap.value;
}
</script>
<form name="virtual">
<input type="text" name="text"/>
<input type="button" onclick="vkb(this)" value="a" style="border:none;"/>
<input type="button" onclick="vkb(this)" value="\" style="border:none;"/>
<input type="button" onclick="vkb(this)" value="'" style="border:none;"/>
<input type="button" onclick="vkb(this)" value='"' style="border:none;"/>
</form>这样做的好处是,您不必写两次密钥的字母:-)
你的问题是,有些字符有时需要转义(比如javascript中的\,它用来做像\n这样意味着换行的事情,所以要有一个\,你需要用第二个反斜杠对它进行转义,比如\\)。
尝试运行它,例如此处的http://jsfiddle.net/T9Ptd/1/或http://jsbin.com/uhakaq/3/edit
https://stackoverflow.com/questions/7771909
复制相似问题