的Javascript
function fn1(){
var a = document.getElementById("xa").value;
var b = document.getElementById("ya").value;
var c = document.getElementById("xb").value;
var d = document.getElementById("yb").value;
fn2(a,b,c,d);
}
HTML
<div align="center"><b>Digital Differential Analyzer</b><br /><br />
X0: <input type="text" id="xa"/>
Y0: <input type="text" id="ya"/>
XE: <input type="text" id="xb"/>
YE: <input type="text" id="yb"/>
<input id="button1" type="button" value="Submit" onclick="e.width = e.width;fn1();" /></div>
如果我输入function1只是调用带有就绪值的function2(例如0,0,300,300),它运行正常,但是当我尝试使用getElementById获取变量时,没有任何作用,我试图修改它很多但是仍然是相同的结果,它甚至没有显示为错误
答案 0 :(得分:2)
尝试:
fn2(+a,+b,+c,+d);
这会将输入值从string转换为int。您的函数不起作用,因为您将字符串值传递给funcrion。
它分别将0添加到变量a,b,c,d并将字符串转换为int
即0 + a = a但现在'a'是int。
要获得更高的准确性,请尝试使用parseFloat()
function fn1(){
var a =parseFloat( document.getElementById("xa").value);
var b =parseFloat( document.getElementById("ya").value);
var c =parseFloat( document.getElementById("xb").value);
var d =parseFloat( document.getElementById("yb").value);
fn2(a,b,c,d);
}