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 как только вызов функции2 с готовыми значениями (например, 0,0,300,300), он работает нормально, но когда я пытаюсь получить переменные с getElementById, ничего не работает, я пытался его модифицировать много, но все же результат, и он даже не отображается как ошибка
пытаться:
fn2(+a,+b,+c,+d);
это преобразует входные значения из строки в int. ваша функция не работает, потому что вы передаете строковые значения функции. он добавляет 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);
}
document.getElementById("xa").value
возвращает строковое значение, готов ли ваш fn2 принимать строки?