所以我首先要说的是我对javascript很新,所以请不要讽刺或者说我知道我要求的内容可能非常简单。
但是说我想编写一个外部java脚本,将两个数字放在一起,我创建了一个具有
的函数function test (x,y,z){
var test = (100*x)*(10y)*z
alert (test)
}
然后如何将其与html文档上的文本字段链接。
答案 0 :(得分:0)
你可以用id链接它,例如
<input id="functionResult">
然后在javascript中
documentgetElementById("functionResult").value=test(1,2,3);
或jquery
$("#functionResult).val(test(1,2,3));
答案 1 :(得分:0)
链接一词意味着正在发生的事情。在JavaScript(以及一般编程)中,某事物是一个事件。因此,您需要处理发生的事件,为此,您将使用所谓的事件处理程序。因此,如果你有一个html元素,它是每个数字的输入,还有一个按钮来创建要处理的事件
<input id="number1" type="text" />
<input id="number2" type="text" />
<input id="number3" type="text" />
<input id="calculate" type="button" value="Calculate" />
并且您希望处理按钮上的click事件以检查您将
的三个输入document.getElementById("calculate")//locate the button element
.onclick=function(){ //assign a click event handler to the button
var x = document.getElementById("number1"); //locate the first number
var y = document.getElementById("number2"); //locate the second number
var z = document.getElementById("number3"); //locate the third number
test(x,y,z); //call your test function
};//end click event handler scope
答案 2 :(得分:0)
我实际上并不知道你在寻找什么。猜测。
完整的程序定义为您只需copy and paste
进行测试。
<!DOCTYPE html>
<html>
<input type="text" id="x" />
<input type="text" id="y" />
<input type="text" id="z" />
<input type=button onclick="test(x.value,y.value,z.value)" value="getResult"/>
<script type="text/javascript">
function test (x,y,z){
var test = (100*x)*(10*y)*z
alert (test)
}
</script>
</html>
为您的计算提供了3个文本字段和button
以及alert
答案 3 :(得分:0)
用于将数据输入函数:
test(2, 4, 99999);
对于链接到文档中的html元素,根据HTML的设置方式,有很多选项。
答案 4 :(得分:0)
假设您有一个文本框
<input type="text" id="myText" >
然后你的功能可以
function test (x,y,z){
var result = (100*x)*(10y)*z;
document.getElementById("myText").value = result;
}
答案 5 :(得分:0)
发布了很好的答案,但请记住这个......
function test (x,y,z){
var test = (100*x)*(10y)*z
alert (test)
}
必须更改为....
function test (x,y,z){
var number = (100*x)*(10y)*z;
alert (number);
}
因为每个javascript命令都需要以分号结尾,否则解释器会认为两个命令是一个。
例如,在OP的问题中,解释器会认为执行:
function test (x,y,z){
var test = (100*x)*(10y)*zalert (test)
}
,错误将在test,zalert和(test)。
答案 6 :(得分:0)
好像你想从表单中捕获输入?你提到了一个&#34;文本字段&#34;。因此,如果您想在用户输入数据时计算数字,或者如果您想在单击按钮时执行此操作,则可以使用可以触发功能的onSubmit,onBlur,onFocus等事件。
例如:
<form>
<input type="text" onBlur="test(this)" />
</form>
每次元素失去焦点时,都会触发test()。我把它传给了这个&#39;定位触发事件的元素。
如果您想在提交表单时触发您的功能,那么您可以在表单上使用onSubmit,您也可以使用jQuery来处理单个表单提交或所有表单提交。
<form name="yourForm" onSubmit="test(this)">
<input type="text" name="x" value="10" />
<input type="text" name="y" value="1" />
<input type="text" name="z" value="18" />
<input type="submit" />
</form>
您可以使用jQuery获取x,y,z的值,如:
<script>
function test(element){
// Display the name of the element if you're curious
alert($(ele).attr('name'));
// I'm using Number() to convert the values to numbers
// Using .find() to search descendants of element for an input
// with a certain name.
// If you fired this function from the element itself you
// could use $(element).val(); to get its value
var x = Number($(element).find('input[name="x"]').val());
var y = Number($(element).find('input[name="y"]').val());
var z = Number($(element).find('input[name="z"]').val());
var total = x*z-y;
// total = 179
alert(total);
}
</script>
我希望这可以帮助你解决这个问题!