HTML表单无法识别输入

时间:2013-06-01 21:43:22

标签: javascript python html forms input

我正在尝试制作一个计算器,按下按钮并将其输出到文本框中,我将使用其值与python输出答案。但是,当我提交它时,文本框甚至不会在表单中被识别。这是我想要做的一个例子。

<html><head><script type="text/javascript"">
function moveNumbers(num) {
var txt=document.getElementById("text").value;
if (num=="del"){ 
txt=txt.slice(0,-1)
}
else if (num=="clr"){
txt=""
}
else{   
txt=txt + num;}
document.getElementById("text").innerHTML = txt;
}
</script>
</head>
<body>
<form action="calc.py" method="POST" >
<textarea maxlength="492" disabled id="text" name="text" rows="4" cols="50"></textarea>
<table>
<tr>
<td class="td1"><button type="button"  class="number" name="number" value="2" onclick="moveNumbers(this.value)">2</button></td>

<td class="td1"><button type="button"  class="number" name="number" value="3" onclick="moveNumbers(this.value)">3</button></td>
<td class="td1"><input type="submit" class="number" value="="></input></td>
</tr>
</table>
</form>

这是我从python中得到的错误:

   getitem 中的

/usr/lib/python2.7/cgi.py(self = FieldStorage(无,无,   []),key ='text')539 if item.name == key:found.append(item)540 if   找不到:=&gt;如果len(found)== 1:543,则541引发KeyError,键542   return found [0] builtin KeyError =,key =   'text':'text'args =('text',)message ='text'

3 个答案:

答案 0 :(得分:1)

带有提交类型的输入将发布数据。这就是你需要的吗?我想你应该尝试使用输入类型作为按钮或使用按钮标签。

答案 1 :(得分:1)

textarea上的disabled属性阻止了它的提交。

您可以尝试以下方法之一:

一个。使用禁用的readonly属性intead

<textarea maxlength="492" readonly="readonly" id="text" name="text" rows="4" cols="50"></textarea>

湾将数字存储在隐藏类型和textarea

的输入中

℃。在提交时使用javascript启用textarea

答案 2 :(得分:1)

我认为您的标记中只有一个额外的引号,您可以将脚本类型指定为text / javascript。

<html>
<head>
<script type="text/javascript"> <!-- Notice the Extra Quote here in your code -->
function moveNumbers(num) {
var txt=document.getElementById("text").value;
if (num=="del"){ 
txt=txt.slice(0,-1)
}
else if (num=="clr"){
txt=""
}
else{   
txt=txt + num;}
document.getElementById("text").innerHTML = txt;
}
</script>
</head>
<body>
<form action="calc.py" method="POST" >
<textarea maxlength="492" disabled id="text" name="text" rows="4" cols="50"></textarea>
<table>
<tr>
<td class="td1"><button type="button"  class="number" name="number" value="2" onclick="moveNumbers(this.value)">2</button></td>

<td class="td1"><button type="button"  class="number" name="number" value="3" onclick="moveNumbers(this.value)">3</button></td>
<td class="td1"><input type="submit" class="number" value="="></input></td>
</tr>
</table>
</form>

希望这有帮助