用HTML处理来自Bottle的返回消息的脚本

时间:2017-08-19 19:42:25

标签: javascript python html bottle

我在Bottle中编写一个小脚本,通过POST从HTML中读取用户输入。我想将结果发送回Bottle函数中的HTML,该函数可以通过HTML中的脚本进行分析。

瓶号:

@app.route("/")
def index():
    return template("user_info.tpl", message = "please enter your data: ")
@app.route("/", method="POST")
def formhandler():

    x = int(request.forms.get('x'))
    y = int(request.forms.get('y'))
    piece = request.forms.get("value")
    final_output = int(slope)*int(value) + int(intercept)
    return template("user_info.tpl", message=str(final_output))
app.run(host="localhost", port = 8080, debug = True)

到目前为止我的HTML:

 <html>
 <head>
 <title>Form Example</title>

 </head>
 <body>
   <form method="post" action="/">
   <fieldset>
    <legend>SAMPLE FORM</legend>
    <ul>
      <li>Enter the row: <input name='x'>
      </li>
      <li>Enter the column: <input name='y'>
      </li>
      <li>Enter the piece name: <input name ="name">
      </li>
    </ul><input type='submit' value='Submit Form'>
  </fieldset>
</form>

<p>Quantitity: {{message}}</p>

<script type="text/javascript">
if (message >= 100)
{
  window.alert("Too high");
}
else {

  window.alert("Just perfect");
}

</script>

  

在我的HTML文件的瓶子里,我试图运行一个非常简单的脚本来分析返回的值。但是,即使输入与控制条件匹配的值,也不会触发弹出窗口。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

我发现几个可能的问题:

  1. request.forms.get("value") - 您在表单
  2. 上没有值字段
  3. final_output = int(slope)*int(value) + int(intercept) - 代码中未提及slopeintercept
  4. 您在JS中没有message变量,因此请在该部分添加var message = {{message}}