我这里有一些代码已经有数组(称为setArray)。并将根据transArray的长度循环遍历该数据,并将随机数据放入文本框字段中。以下是完整代码:http://jsfiddle.net/EABRJ/
var loadBills = function ()
{
clearFields();
mySetArray(); //Fills the transArray randomly with 1-4 items
// TEMPORARY ALERT BELOW SO YOU CAN SEE THAT THE ARRAY IS BEING LOADED
// alert(transArray);
for ( var i = 0; i <= transArray.length; i++)
{
var items = 'item' + i;
var amounts = 'amount' + i;
splittedData = transArray[i].split(":");
items.value += splittedData[0];
amounts.value += splittedData[1];
}
}
var clearFields = function ()
{
for ( i = 1; i <= 4; i++)
{
itemName = 'item' + i;
$(itemName).value = "";
}
for ( i = 1; i <= 4; i++)
{
amountName = 'amount' + i;
$(amountName).value = "";
}
$('total').value = "";
}
var mySetArray = function ()
{
var myRandom = Math.floor((Math.random() * 100) / 25) + 1; //a number between 1 and 4
transArray = new Array(); //Resets the Array to empty
if (myRandom == 1)
{
transArray[0] = "Food:200";
}
if (myRandom == 2)
{
transArray[0] = "Food:200";
transArray[1] = "Toys:700";
}
if (myRandom == 3)
{
transArray[0] = "Food:200";
transArray[1] = "Toys:700";
transArray[2] = "Mortgage:1800";
}
if (myRandom == 4)
{
transArray[0] = "Food:200";
transArray[1] = "Toys:700";
transArray[2] = "Mortgage:1800";
transArray[3] = "Cable:130";
}
}
window.onload = function ()
{
$("loadbills").onclick = loadBills;
$("clearfields").onclick = clearFields;
}
答案 0 :(得分:0)
这是更正后的JS代码..
var loadBills = function () {
clearFields();
mySetArray(); //Fills the transArray randomly with 1-4 items
// TEMPORARY ALERT BELOW SO YOU CAN SEE THAT THE ARRAY IS BEING LOADED
console.log(transArray);
for (var i = 0; i <= transArray.length; i++) {
if(transArray[i] != 'undefined' && transArray[i] != null) {
var sdata = transArray[i].split(":");
$("#item"+(i+1)).val(sdata[0]);
$("#amount"+(i+1)).val(sdata[1]);
}
}
}
var clearFields = function () {
for (i = 1; i <= 4; i++) {
$("#item"+i).val("");
}
for (i = 1; i <= 4; i++) {
$("#amount"+i).val("");
}
$('total').value = "";
}
var mySetArray = function () {
var myRandom = Math.floor((Math.random() * 100) / 25) + 1; //a number between 1 and 4
transArray = new Array(); //Resets the Array to empty
if (myRandom == 1) {
transArray[0] = "Food:200";
}
if (myRandom == 2) {
transArray[0] = "Food:200";
transArray[1] = "Toys:700";
}
if (myRandom == 3) {
transArray[0] = "Food:200";
transArray[1] = "Toys:700";
transArray[2] = "Mortgage:1800";
}
if (myRandom == 4) {
transArray[0] = "Food:200";
transArray[1] = "Toys:700";
transArray[2] = "Mortgage:1800";
transArray[3] = "Cable:130";
}
}
$("#loadbills").on("click", loadBills);
$("#clearfields").on("click", clearFields);