将 Brython 代码与多个计算一起使用



我正在尝试在在线课程中开始使用Brython。为了测试它,我创建了一个简单的单位转换练习,学生以英里/小时为单位填写速度,并以英尺/秒为单位返回速度。但我发现我添加的任何第二个计算都被忽略了。有些东西需要归零,或者刷新,或者重置什么的!任何建议将不胜感激。这个简单练习的代码如下(我没有加载 MathJax,所以 $ 符号(

。您将看到第一个工作正常,第二个工作正常,除了更改函数名称外完全相同,并且所有变量都被简单地忽略了。

谢谢!

<HTML>
<HEAD>
<META charset="utf-8">
<script type="text/javascript"
src="https://cdn.rawgit.com/brython-dev/brython/3.3.5/www/src/brython.js">
</script>
<script type="text/javascript"
src="https://cdn.rawgit.com/brython-    dev/brython/3.3.5/www/src/brython_stdlib.js">
</script>
</HEAD>
<BODY bgcolor="white" onload="brython(1)">
<H1>test</H1>
<!-- silly test example anticipating multiple unit conversions in a row: -->
<!-- This will work if I remove the previous script and form...but won't if it follows -->
<SCRIPT type ="text/python"> 
import math 
from browser import document
@document["vmph"].bind("change") 
def gcal(xx): 
# get the first element with tag "form" in the document
fh = document.select("form")[0] 
vvmph = float(fh.vmph.value) 
vvftps = vvmph*1.4666700004 
fh.vftps.value = vvftps 
</SCRIPT>

<FORM method="" action=""> 
<p class="ex1">For $v$ mph = <INPUT Type="text" Name="vmph" id="vmph"     Value="" Size="10" autocomplete="off"> $;;$mph<br> 
we get that $v$ ft per second = <INPUT Type="text" Name="vftps" Value=""     Size="10">. 
</p> 
</FORM>

<SCRIPT type ="text/python">            
import math 
from browser import document
@document["vmph2"].bind("change") 
def gcal2(xxx): 
# get the first element with tag "form" in the document
fh2 = document.select("form")[0] 
vvmph2 = float(fh2.vmph2.value) 
vvftps2 = vvmph2*1.4666700004 
fh2.vftps2.value = vvftps2 
</SCRIPT>
<FORM method="" action=""> 
<p class="ex1">For $v$ mph = <INPUT Type="text" Name="vmph2" id="vmph2" Value="" Size="10" autocomplete="off"> $;;$mph<br> 
we get that $v$ ft per second = <INPUT Type="text" Name="vftps2" Value="" Size="10">. 
</p> 
</FORM>
</BODY>
</HTML>

工作甚至是你复制和粘贴的代码的注释:第二个脚本检索回第一个表单,并尝试更改那里不存在的"vmph2"控件。第二个函数应从文档窗体中获取索引[1]。但是,与其进入表单(您的 fh 和 fh2 变量(,然后继续控制,不如简单地获取对带有document["vmph"]document["vmph2"]的相关标签的引用。

最新更新