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

Javascript 从输入字段的字符串值创建对象,javascript,Javascript,我有一个输入隐藏字段,类似于:- < input type="hidden" name="dateRange" id="dateRange" value="'2013-04-03','2013-04-04','2013-04-05','2013-04-10'"/> 我尝试了以下方法: var dateRange=document.getElementById("dateRange").value; var dates_allowed_Array = dateRange.split(

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

< input type="hidden" name="dateRange" id="dateRange" value="'2013-04-03','2013-04-04','2013-04-05','2013-04-10'"/>
我尝试了以下方法:

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;
    }
var dateRange=document.getElementById(“dateRange”).value;
var dates\u allowed\u Array=dateRange.split(“,”);
var dates_allowed1={};

对于(i=0;i我想您只是输入了一个错误。您声明了
dates\u allowed 1
,但随后使用了
dates\u allowed

当我确定它工作正常时,你可以从这把小提琴上看到:

固定代码:

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;
}
var dateRange=document.getElementById(“dateRange”).value;
var dates\u allowed\u Array=dateRange.split(“,”);
var dates_allowed={};

对于(i=0;ivar dates_allowed)1,应允许var dates_


另外,您想去掉单引号还是让它们保持打开状态?

请解释“它不起作用”。您在控制台中看到任何错误吗?
var dates\u allowed1={}
此处输入错误?我刚刚为同一演示做了一个小提琴,但你抢先找到了答案。投票结果为上。@user2241885我不清楚为什么要将数组更改为对象-只需使用数组,因为你有相同的值。
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;
}