简体   繁体   English

Javascript Split()函数不会返回值

[英]Javascript Split() function won't return a value

Im really new to Java script, so please bear with me. 我对Java脚本真的很陌生,所以请耐心等待。 I'm trying to write a script that will return a date with the addition of a user selected number of days. 我正在尝试编写一个脚本,该脚本将返回日期以及用户选择的天数。 It works fine as far as returning a value (in the variable expDate, however the value is in the long format (ie "Wed Jan 02 2013 00:00:00 GMT+0800 (HKT)) . I run into trouble when I try and break it down into different sections using split. Now my output is just blank. 只要返回一个值,它就可以正常工作(在变量expDate中,但是该值采用长格式(例如,“ Wed Jan 02 2013 00:00:00 GMT + 0800(HKT))”。尝试时遇到麻烦并使用split将其分解为不同的部分现在,我的输出为空白。

Any help would be greatly appreciated! 任何帮助将不胜感激!

Javascript Java脚本

<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 的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>

.split() is a String method (that is it works on strings) and you are trying to use it on a Date object. .split()是一个String方法(它适用于字符串),并且您正尝试在Date对象上使用它。

You'd be better to do 你最好去做

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

getMonth() , getDay() and getYear() being methods that can be used on a Date object. getMonth()getDay()getYear()是可以在Date对象上使用的方法。

EDIT 编辑

Also note that you are setting monthFomatted then accessing monthFormatted which just isn't going to work. 另请注意,您monthFomatted设置monthFomatted然后再访问monthFormatted ,而这将无法正常工作。 Check to make sure that variables are named consistently. 检查以确保变量的名称一致。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM