HTMLに入力テキストボックスがあり、ユーザーに「Y」または「N」のみを許可したいのですが、ユーザーが他の文字を入力しようとすると、警告ダイアログボックスが表示されます。誰か私をdisに助けてくれませんか??
5 に答える
0
前述のように、最良のオプションはラジオ ボタンを使用することです。
<input type="radio" name="yn" value="Y">Y<br>
<input type="radio" name="yn" value="N">N<br>
次に、いずれかを選択済みとして設定するか、送信時に選択済みであることを確認します。または、スクリプト化された入力要素を使用できますが、賢明ではありません。
<script>
function validateYN(element) {
var errNode = document.getElementById(element.id + '_err');
if(/^[YN]$/.test(element.value)) {
errNode.innerHTML = '';
} else {
errNode.innerHTML = "You must enter Y or N";
}
}
</script>
Please enter Y or N: <input name="foo" id="foo" onchange="validateYN(this);"
onblur="validateYN(this);">
<span id="foo_err"></span>
于 2013-03-30T07:00:26.257 に答える
0
<html>
<head>
<script type="text/javascript">
function keyPressed(evt)
{
var theEvent = evt || window.event;
var k = theEvent.keyCode || theEvent.which;
if(k == 89 || k == 78 || k == 8 || k == 46)
return true;
else{
alert("Your Message");
evt.preventDefault();
return false;
}
}
</script>
</head>
<body>
<input type="text" onkeydown="keyPressed(event)" />
</body>
</html>
于 2013-03-30T06:56:14.773 に答える
0
あなたもこれを試すことができます
$("input").live('keypress', function(e) {
if!( code == 89 || code == 121 ||
code == 78 || code == 110 ) ) {
e.preventDefault();
}
else //your code
于 2013-03-30T07:07:01.450 に答える