你好 在我的应用程序中,我将用户以dd / mm / yyyy格式(例如“11/11/2010”)收到的日期附加到使用ajax和js.erb文件的选择列表
我的选择列表代码是
<select name="hour[reported_date]" id="customDate_link_hours">
<option value="Today">Today</option>
<option value="Yesterday">Yesterday</option>
<option value="Custom_range">Select Date</option>
</select>
控制器中的我将从用户收到的日期分配给@display_date变量
@display_date=params[:hour][:reported_date]
在我执行的js.erb文件中
$('#customDate_link_hours').append($('<option></option>').attr('value',<%=@display_date%>).attr('selected',true).text(<%=@display_date%>))
功能正常但我得到非常奇怪的最终输入
例如,如果我将日期“18/11/2010”添加到选择列表中,则收到的附加值为“0.013888888888”
如果我得到日期“2/11/201”,则选择列表中收到的附加值为“0.00009045687471733”。
我怀疑问题出在日期格式的“/”字符中,因为当我试图输入其他字符串如“18112010”时,每件事情都工作正常
如果有人能告诉我该怎么做以解决这个问题,我将非常感激。
答案 0 :(得分:1)
您的ERB区块周围需要引号:
$('#customDate_link_hours')
.append($('<option></option>')
.attr('value','<%=@display_date%>')
.attr('selected',true).text('<%=@display_date%>'));
现在Javascript正在看一个文字2/11/201并将其视为一个部门。