从输入字段的字符串值创建对象

时间:2013-04-03 19:02:47

标签: javascript

我有一个输入隐藏字段,类似于: -

< input type="hidden" name="dateRange" id="dateRange" value="'2013-04-03','2013-04-04','2013-04-05','2013-04-10'"/>

我需要使用此输入字段的值在javascript中创建一个对象。如: -

var dates_allowed = {
      '2013-04-03': 1,
      '2013-04-04': 1,
      '2013-04-05': 1,
      '2013-04-10': 1,
};

我尝试了以下内容;

var dateRange=document.getElementById("dateRange").value;
var dates_allowed_Array = dateRange.split(",");
var dates_allowed1 = {};
for (i=0; i<dates_allowed_Array.length;i++) {
    var innerloop = dates_allowed_Array[i] ;
    dates_allowed[innerloop]=1;
    }

但它不起作用。

2 个答案:

答案 0 :(得分:1)

我认为你只是有一个错字。您声明了dates_allowed1,但随后使用了dates_allowed

当我修复它工作正常时,你可以通过这个小提琴看到:http://jsfiddle.net/9Gfj2/

固定代码:

var dateRange=document.getElementById("dateRange").value;
var dates_allowed_Array = dateRange.split(",");
var dates_allowed = {};
for (i=0; i<dates_allowed_Array.length;i++) {
    var innerloop = dates_allowed_Array[i] ;
    dates_allowed[innerloop]=1;
}

答案 1 :(得分:0)

var dates_allowed1应为var dates_allowed

另外,您是要删除单引号还是将其保留?