1
날짜를 표시하는 데 사용할 양식과 텍스트 입력 필드가 있습니다. 나는 "+"가 하루를 더하기 위해 .onkeypress
을 통해 항목을 캡쳐 할 수 있기를 원합니다.입력 된 키가 입력 필드 값에 추가되는 것을 방지합니다.
내가 입력 한 키 (아래의 예에서는 + "키)는 dDate 필드에도 추가됩니다.
moment.js
다음은<form>
<input type="text" id="dDate" size="25" value="11/22/2014"></textarea>
</form>
<script type="text/javascript">
document.getElementById("dDate").onkeypress=function(e) {
var e=window.event || e
var keyunicode=e.charCode || e.keyCode
//Allow alphabetical keys, plus BACKSPACE and SPACE
// return (keyunicode>=65 && keyunicode<=122 || keyunicode==8 || keyunicode==32)? true : false
switch (keyunicode) {
case 61:
alert("Hit Plus Key: "+ keyunicode);
break ;
case 43:
var cDate = document.getElementById("dDate");
var d = moment(cDate.value);
var duration = moment.duration({'days' : 1});
d.add(duration);
cNewDate = d.format('MM/DD/YYYY')
cDate.value = cNewDate;
break;
case 187:
alert("Hit Plus Key: "+ keyunicode);
break;
default:
alert("Hit non-Plus Key" + keyunicode);
}
}
</script>
이
당신이 경우 위의 결과는 표준 HTML 태그 것 HTML 태그 후 발견 될 것입니다 HTML 태그 아래 의 태그에 추가 + 키가 dDate 필드 2014년 11월 23일로 증가된다 공격뿐만 아니라 "+", 결과가 있습니다 11/23/2014+
어떤 도움을 주시면 감사하겠습니다.
안녕하세요, 매우 빠른 응답을 보내 주셔서 감사합니다. 함수의 마지막 "}"직전에이 줄을 추가했지만 더 이상 날짜를 추가하기 위해 "+"키를 반복하지 못하지만 더 이상 "+"키를 끝에 추가합니다. 필드. 다른 의견은 있습니까? –
@KevinHunt 입력 한 후에 ''이 (가)있는 것으로 확인되었습니다. 반드시 제거하십시오. 나는 또한 잠시 빠져서 일하는 바이올린을 세웠지 만 그럼에도 불구하고 의도 된대로 작업했다 : http://jsfiddle.net/6ueupu0f/ –