Facebook アプリで動作するように mootools を使用して作成されたフォームを検証するための単純な JavaScript 関数を作成しました。
Facebookコンテストアプリはこちら
元の検証は HTML5 を使用して行われましたが、これはすべてのブラウザーで機能するとは限らないため、何かを考え出す必要がありました。だから私は単純なjavascript関数を作成し、それが機能することを知っていますが、送信ボタンのonClickで検証が機能していたため、mootools lightfaceで機能させるのに問題がありますが、lightfaceプラグインではこれを行うオプションがありませんそれが理にかなっている場合、送信ボタンはフォームとは独立して定義されていますか?
ここにコードをアップロードする方法がわかりませんが、リンクに移動して回答として「Chuckie」を選択すると、フォームが表示され、そこからフレーム ソースを表示できます。
ここに私の検証コードがあります:
function validate(form) {
var fail = false;
var name = document.getElementById("full_name");
if (name.value.length == 0) {
document.getElementById("okName").className = "fail";
fail = true;
}else{
document.getElementById("okName").className = "success";
}
var email = document.getElementById("email");
var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
if (email.value.length == 0 || !emailPattern.test(email.value)) {
document.getElementById("okEmail").className = "fail";
fail = true;
}else{
document.getElementById("okEmail").className = "success";
}
var phone = document.getElementById("phone");
var phonePattern = /^\+?[0-9]{0,15}$/ ;
if (phone.value.length == 0 || !phonePattern.test(phone.value)) {
document.getElementById("okPhone").className = "fail";
fail = true;
}else{
document.getElementById("okPhone").className = "success";
}
if ( fail ) {
alert( "You didn't fill out all inputs" );
} else {
alert( "Everything OK" );
}
}//End of validation function
私が基本的に望んでいるのは、可能であればこのメソッドを mootools 送信ボタンに渡すことだけですか?