我正在尝试使用applyValue函数应用图像映射的值。 我没有在控制台上显示任何错误,但该值未应用于输入。
当我调试JS文件时,值正确传递,
<script type="text/javascript"
src="/web/static/js/jquery-1.10.2.min.js"></script>
<script src="web/static/js/keypadControl.js" type="text/javascript"></script>
<div id="keypadDiv" style="position:absolute; top:80px; left:575px; z-index:3;">
<img src="web/static/media/images/keypad.jpg" width="413" height="608" usemap="#keypad" border="0">
<map name="keypad" id="keypad">
<area shape="rect" coords="20,25,140,166" onclick="applyValue('1', 'false');" />
<area shape="rect" coords="145,25,265,166" onclick="applyValue('2', 'false');" />
<area shape="rect" coords="270,25,390,166" onclick="applyValue('3', 'false');" />
<area shape="rect" coords="20,166,140,303" onclick="applyValue('4', 'false');" />
<area shape="rect" coords="145,166,265,303" onclick="applyValue('5', 'false');" />
<area shape="rect" coords="270,166,390,303" onclick="applyValue('6', 'false');" />
<area shape="rect" coords="20,302,140,443" onclick="applyValue('7', 'false');" />
<area shape="rect" coords="145,302,265,443" onclick="applyValue('8', 'false');" />
<area shape="rect" coords="270,302,390,443" onclick="applyValue('9', 'false');" />
<area shape="rect" coords="145,442,265,587" onclick=" applyValue('0', 'false');" />
<area shape="rect" coords="20,442,140,587" onclick="applyValue('backspace', 'false');" />
<area shape="rect" coords="270,442,390,587" onclick="applyValue('clear', 'false');" />
</map>
</div>
JS文件: keypadControl.js
function applyValue(value, phoneNum)
{
var currField = $('#number')
var valueOfInput = currField.val();
if (value == "backspace") {
if (isNaN(valueOfInput.charAt(valueOfInput.length - 1))) {
valueOfInput = valueOfInput.substring(0, valueOfInput.length - 2);
}
else {
valueOfInput = valueOfInput.substring(0, valueOfInput.length - 1);
}
} else if (value == "clear") {
valueOfInput = "";
} else {
if (phoneNum == "true") {
var length = valueOfInput.length;
if (length < 13) {
switch (length) {
case 0:
valueOfInput = "(" + value;
break;
case 3:
valueOfInput += value + ")" ;
break;
case 7:
valueOfInput += value + "-" ;
break;
default:
valueOfInput += value;
break;
}
}
}
else {
valueOfInput += value;
}
}
}
我要将值应用到的字段。
<input id="number" name="number" type="text" class="numClass" />
。 。 。
答案 0 :(得分:1)
您的功能需要将输入设置为您最后计算的值。
.*