通过HTML更改脚本中的变量

时间:2012-11-06 11:49:57

标签: javascript jquery html variables

我的脚本中有许多变量,我希望能够通过程序的HTML端进行编辑。这样一来,如果需要对程序进行更改,脚本就可以单独使用,并且可以通过HTML进行更改。

以下是我想在HTML中编辑的变量:

var numberToComplete = 2;
var xAxis = 8;
var yAxis = 6;
var populationAmount = 2; 

有没有办法做到这一点,如果是这样的话?

4 个答案:

答案 0 :(得分:1)

HTML本身不能做这些事情,但你可以有一个事件处理程序来完成这项工作,例如。

<label for=n>Number to complete:</label>
<input id=n value=3 onchange="numberToComplete = this.value">

具体如何执行此操作取决于上下文。

答案 1 :(得分:1)

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Testing Variable Capturing</title>
        <script type="text/javascript" src="jquery-1.7.2.min.js"></script>
        <script>
        var numberToComplete = 0;
            var xAxis = 0;
            var yAxis = 0;
            var populationAmount = 0; 

            function setValues() {
                numberToComplete = $("#numberToComplete").val();
                xAxis = $("#xAxis").val();
                yAxis = $("#yAxis").val();
                populationAmount = $("#populationAmount").val();
            }
            function getValues() {
                $("#result").text("numberToComplete: " + numberToComplete + " | xAxis: " + xAxis + " | yAxis: " + yAxis + " | populationAmount: " + populationAmount);
            }
        </script>
    </head>
    <body>
       numberToComplete : <input id="numberToComplete" type="text"/><br/>
       xAxis: <input id="xAxis" type="text"/><br/>
       yAxis: <input id="yAxis" type="text"/><br/>
       populationAmount: <input id="populationAmount" type="text"/><br/>
       <input type="button" onclick="setValues();" value="Set Values" />
       <input type="button" onclick="getValues();" value="Get Values" /><br/>
       <div id="result"></div>
    </body>
</html>

上面的代码演示了一个简单的表单,它捕获用户输入的值,并将值设置为您想要的变量。此示例使用jQuery引用。

答案 2 :(得分:0)

您可以编写一个函数,使用eval执行javascript并设置值

答案 3 :(得分:0)

这样您就可以从html表单传递值,而不必更改脚本

<input type='text' id='numberToComplete'>
<input type='button' id='mybutton' value='mybutton'>​

$("#mybutton").click(function(){

var numberToComplete = ($("#numberToComplete").val()=='')? 2:$("#numberToComplete").val() ;       
var xAxis = 8;
var yAxis = 6;
var populationAmount = 2; 
});

DEMO