如何使用数组为以下代码创建泛型函数

时间:2011-10-06 08:50:03

标签: javascript

如何使用数组

为以下代码创建通用函数
function checkTermDuration(id) {
    var days = "Days"
    if (id == days) {
        document.getElementById('termPurchase:maturityDateInputDate').value = "";
        document.getElementById('termPurchase:selectDate:1').checked = true;
    } else {
        document.getElementById('termPurchase:day').value = "";
        document.getElementById('termPurchase:months').value = "";
        document.getElementById('termPurchase:years').value = "";
        document.getElementById('termPurchase:selectDate:0').checked = true;
    }
}

1 个答案:

答案 0 :(得分:0)

我不完全确定你的“泛型函数”是什么意思,但是我已经把它作为表驱动,所以所有变化的数据都在几个数组中:

var data1 = [
    {name: 'day', field: 'value', value: ""},
    {name: 'months', field: 'value', value: ""},
    {name: 'years', field: 'value', value: ""},
    {name: 'selectDate:0', field: 'checked', value: true}
];

var data2 = [
    {name: 'maturityDateInputDate', field: 'value', value: ""},
    {name: 'selectDate:1', field: 'checked', value: true}
];

function initData(data) {
    var item, i;
    for (i = 0; i < data.length; i++) {
        item = data[i];
        document.getElementById("termPurchase:" + item.name)[item.field] = item.value;
    }
}

function checkTermDuration(id) {
    if (id == "Days") {
        initData(data1);
    } else {
        initData(data2);
    }
}
相关问题