我正在尝试验证文本输入以仅允许其中包含数字值和“。”将插入 Google 网站中的 Google 小工具的字符。 HTML 和 JavaScript 代码在我的台式机和笔记本电脑上运行得很好,但是当我将代码嵌入到 XML 小工具文件中并从托管在 Google 代码中的 URL 创建小工具时,它无法在 PC 和智能手机上运行,或者事实上任何事情。代码如下:
<?xml version="1.0" encoding="UTF-8" ?>
<Module>
<ModulePrefs title="On Line Payroll Calculator" />
<Content type="html">
<![CDATA[
<style>
input{
text-align: right;
}
</style>
<table id= "mytable" width="50%">
<tr id = "row1"><!-- Row 1 -->
<td><label>Basic Salary</label></td><!-- Col 1 -->
<td><input / type="text" name="salary" onKeyPress="validate(event)"></td>
</tr>
</table>
<SCRIPT TYPE="text/javascript">
function validate(evt) {
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
key = String.fromCharCode( key );
var regex = /[0-9]|\./;
if( !regex.test(key) ) {
theEvent.returnValue = false;
if(theEvent.preventDefault) theEvent.preventDefault();
}
}
</SCRIPT>
]]>
</Content>
</Module>
问题:如何在 Google 网站或 Google 小工具内进行此类验证?
最佳答案
尝试使用类型设置为数字的输入。这将自动验证自身,不需要任何 JS。
<td><input type="number" name="salary"></td>
这是一个 JsFiddle:http://jsfiddle.net/8apDY/
这是纯 Javascript 解决方案:http://jsfiddle.net/8apDY/20/
关于Google 小工具中的 javascript 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22149378/