これで、ユーザーがフォームの状態フィールドに状態の省略形以外のものを入力できないようにするスクリプトができました。ギデオンに感謝します
スクリプトを少し変更して、無効な状態に入ったときのアラートメッセージを含めました。しかし、私はそれが本当に好きではありません。ページの上部またはフィールドのすぐ下で点滅するアラートバーを探します。間違った略語を入力すると自動的に表示され、ユーザーの注意を引くために点滅し、数秒後に消えます。どんなアイデアや考えでも大歓迎です!私は提案を非常に受け入れています!もう一度ありがとう!
私はあなたたちが私を理解していないと思い始めています。これは私が持っているコードです:
<script>
function validateState(el) {
//put all states in this array.
var states = ["AK","AL","AR","AS","AZ","CA","CO","CT","DC","DE",
"FL","GA","GU","HI","IA",
"ID","IL","IN","KS","KY","LA","MA","MD","ME","MH","MI","MN","MO","MS","MT",
"NC","ND","NE","NH","NJ","NM","NV","NY","OH","OK","OR","PA","PR","PW","RI",
"SC","SD","TN","TX","UT","VA","VI","VT","WA","WI","WV","WY"];
for(var i=0;i< states.length;i++) {
if(el.value.toUpperCase() == states[i]) {
return true;
}
}
//clear element if it doesn't match a state
el.value = ""; //you could maybe do something else here.
alert('Invalid State Abbreviation, You must fix this before continuing')
document.getElementById("state").focus();
return false;
}
</script>
ステートメントがfalseを返した場合、画面全体にバーを実行させたいと思っています。