我的脚本中有许多变量,我希望能够通过程序的 HTML 端进行编辑。这样,如果需要对程序进行更改,脚本可以单独放置,并且可以通过 HTML 进行更改。
以下是我想在 HTML 中编辑的变量:
var numberToComplete = 2;
var xAxis = 8;
var yAxis = 6;
var populationAmount = 2;
有没有办法做到这一点,如果有怎么办?
我的脚本中有许多变量,我希望能够通过程序的 HTML 端进行编辑。这样,如果需要对程序进行更改,脚本可以单独放置,并且可以通过 HTML 进行更改。
以下是我想在 HTML 中编辑的变量:
var numberToComplete = 2;
var xAxis = 8;
var yAxis = 6;
var populationAmount = 2;
有没有办法做到这一点,如果有怎么办?
HTML 本身不能做这样的事情,但你可以有一个事件处理程序来完成这项工作,例如
<label for=n>Number to complete:</label>
<input id=n value=3 onchange="numberToComplete = this.value">
具体如何执行取决于上下文。
<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 引用。
您可以编写一个eval
用于执行 javascript 并设置值的函数
这样您就可以从 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;
});
演示 </p>