【问题标题】:Javascript Split() function won't return a valueJavascript Split() 函数不会返回值
【发布时间】:2014-03-18 11:38:18
【问题描述】:

我对 Java 脚本真的很陌生,所以请多多包涵。我正在尝试编写一个脚本,该脚本将返回一个日期,并添加用户选择的天数。它可以很好地返回一个值(在变量 expDate 中,但是该值是长格式的(即“Wed Jan 02 2013 00:00:00 GMT+0800 (HKT))。我在尝试时遇到了麻烦并使用 split 将其分解为不同的部分。现在我的输出只是空白。

任何帮助将不胜感激!

Javascript

<script type="text/javascript">
function setExpDate(){

var formDate = document.getElementById('startDate').value;
var number = +document.getElementById('days').value;


var interval = number;

var startDate = new Date(Date.parse(formDate));

var expDate = startDate;
expDate.setDate(startDate.getDate() + interval);



var splitDate = expDate.split(' ');

var monthFomatted  = splitDate[1];
var dayFomatted  = splitDate[2];
var yearFomatted  = splitDate[3];


document.getElementById('total').innerHTML = monthFormatted;
document.getElementById('daysdays').innerHTML = Dateformatted;
};
</script>
</head>

HTML

<body>

<input type="text" size="10" maxlength="10" id="startDate" name="startDate" onblur="setExpDate(this.value)">

<select name="days" id="days" onchange="setExpDate(this.value)">
<option value="01">1</option>
<option value="02">2</option>
<option value="03">3</option>
<option value="04">4</option>
<option value="05">5</option>
<option value="06">6</option>
<option value="07">7</option>
</select>

 <div id="total"></div> <br/><div id="daysdays"></div>
</body>
 </html>

【问题讨论】:

    标签: javascript arrays split


    【解决方案1】:

    .split() 是一个 String 方法(即它适用于字符串),您正尝试在 Date 对象上使用它。

    你最好这样做

    var monthFomatted  = expDate.getMonth();
    var dayFomatted  = expDate.getDay();
    var yearFomatted  = expDate.getYear();
    

    getMonth()getDay()getYear() 是可用于 Date 对象的方法。

    编辑

    另请注意,您正在设置monthFomatted,然后访问monthFormatted,这是行不通的。检查以确保变量的命名一致。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-12
      • 2013-03-25
      • 1970-01-01
      • 1970-01-01
      • 2016-04-25
      相关资源
      最近更新 更多