1

我想将文本框中给出的值存储在变量中。我是 javascript 的初学者。请帮帮我。这是我的代码。

<!DOCTYPE html>
<html>
<body>

Days of Journey: <input type="text" id="doj" name="daysofjourney">
<input type="button" value="submit" onclick="dayscounter()">

<script language="javascript" type="text/javascript">
var travel = document.getElementById("doj").value;

function dayscounter() {
    var days;
    for(days = 1; days <= travel; days++) {
        document.write(days);
    }
}
</script>

</body>
</html>  
4

3 回答 3

2

你几乎已经拥有它了...

function dayscounter() {
    var travel = document.getElementById("doj").value;
    var days;
    for(days=1;days<=travel;days++)
    {
        document.write(days);
    }
}

问题是,一旦加载了 HTML 代码,就会对变量 travel 进行第一次分配。用户当时还不能进行输入,因此变量保持为空。如果您包含document.getElementById("doj").value在函数内部,您将在启动该函数的特定时间获得该值。

于 2013-11-10T13:02:04.307 回答
1

只需将值解析为 int

var travel = +(document.getElementById("doj").value;);
于 2013-11-10T13:03:20.340 回答
0

您可以使用文本输入的“值”属性来设置它的值,例如:

<input type="text" id="textid" value="value content" />

你可以这样做:

<script language="javascript" type="text/javascript">
function dayscounter()
{   
    var travel = document.getElementById("doj").value;
    var days;
    var result = "";

    for (days = 1; days <= parseInt(travel); ++days)
    {
        document.getElementById("result").value += " " + days;
    }
}
</script>


Days of Journey:
<input type="text" id="doj" name="daysofjourney" />
<input type="button" value="submit" onclick="dayscounter()" />

<p>
    <input type="text" id="result" />
</p>
于 2013-11-10T13:16:30.813 回答