我使用以下示例代码创建了一个虚拟键盘。
<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>
现在最后我只遇到问题\
我无法使用我的虚拟键盘添加此笔画。任何人都可以帮我解决如何将\
添加到文本框中的问题吗?其他人请提供使用asci值添加\
的语法。
答案 0 :(得分:2)
太久了,没看过: - )
试试这个:
<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
中运行它答案 1 :(得分:0)
我不知道你已经包含了足够的细节来回答你的问题。但请记住,'\'字符在javascript中用作转义字符。这意味着你有时需要加倍,有时甚至更多,这取决于你通过多少级别的解释:
尝试'\\'来获取代码的斜杠,或者'\\\\'获得两个斜杠,这会将一个斜杠传递给另一个图层。