日期:2014-05-17  浏览次数:20407 次

关于页面的JS值替换问题
ASP.NET有以下一个JS函数:
JScript code

var ID=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
var NameValue = { "A": 0, "B": 1, "C": 2, "D": 3, "E": 4, "F": 5, "G": 6, "H": 7, "I": 8, "J": 9, "L": 10 };
function deleteElementByArguments() {
    var str = ID.join(',');
    var searchIndex;
    for (var i = 0; i < arguments.length; i++) {
        searchIndex = str.indexOf(arguments[i]);
        if (searchIndex != "-1") {
            str.replace(/arguments[i]/ig, "");//此处有问题
        }
    }    
    return str.split(',');//此处有问题
}
var value = deleteElementByArguments(NameValue.A, NameValue.C);
//期望此时的value为[1, 3, 4, 5, 6, 7, 8, 9, 10]


请问如何修改我这个deleteElementByArguments函数,实现这个需求?谢谢!

------解决方案--------------------
JScript code

var ID=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
var NameValue = { "A": 0, "B": 1, "C": 2, "D": 3, "E": 4, "F": 5, "G": 6, "H": 7, "I": 8, "J": 9, "L": 10 };
function deleteElementByArguments() {
    var str = ID.join(',');
    var searchIndex;
    for (var i = 0; i < arguments.length; i++) {
        var reg=new RegExp(arguments[i]+',?','gi');
        searchIndex = str.indexOf(arguments[i]);
        if (searchIndex != "-1") {
            str=str.replace(reg, "");//此处有问题
        }
    }    
    return str.split(',');//此处有问题
}
var value = deleteElementByArguments(NameValue.A, NameValue.C);alert(value);