0

私はApexでこのような同様のことをしようとしています

apex にない Jquery の例

上記のリンクは例を示していますがnot、頂点にあります。

基本的に、ユーザーが入力しているときにフィールドを検証し、フィールドが正しいとすぐにエラーを削除したいと考えています。

apex バージョン 4.0 を使用しています。

エラーを強制しようとしても、エラーメッセージが表示されないため、これまでに行ったことは機能していません。

ページHTML headers and Body AttributeにCSSがあります

`<style>
#error{
    margin-bottom: 20px;
    border: 1px solid #efefef;
}
#error ul{
    list-style: square;
    padding: 5px;
    font-size: 11px;
}
#error ul li{
    list-style-position: inside;
    line-height: 1.6em;
}
#error ul li strong{
    color: #e46c6d;
}
#error.valid ul li strong{
    color: #93d72e;
}

</style>`

そしてJavaScriptで私は持っています

`$(document).ready() {
var name = $("#P1_TEST");
};
<script>
function validateName(){
    //if it's NOT valid
    if(p_t03.val().length < 4){
        p_t03.addClass("error");
                error_message("Must be than 3 letters!");
        return false;
    }
    //if it's valid
    else{
        p_t03.removeClass("error");
        return true;
    }
}

</script>
<script>
p_t03.blur(validateName);
p_t03.keyup(validateName);
</script>`

という名前ですp_t03のでご注意ください。P1_TESTクロムの要素を検査するためです。`id="pP1_TEST" name=" p_t03"

オンItem-> P1_TEST-> HTML Form Element Attributes. onblur="validateName();"上記のjquery検証をチェックする必要があります。

apexでこれを行うのはこれが初めてです。私は自分が正しい方法でやっていると確信しています。

4

1 に答える 1

0

JavaScript を次のように置き換えます。

var name = $("#P1_TEST");

function validateName(){
    //if it's NOT valid
    if(name.val().length < 4){
        name.addClass("error");
                error_message("Must be than 3 letters!");
        return false;
    }
    //if it's valid
    else{
        name.removeClass("error");
        return true;
    }
}

$(document).ready(function() {
    name.blur(validateName);
    name.keyup(validateName);
})

コードが機能しなかった理由:

  • <script></script>ページ属性 > JavaScript にコードを配置する場合、タグは必要ありません。
  • p_t03.blur();JQuery を呼び出すための正しい構文ではありません。 $('[name="p_t03"]').blur();必要なものです。簡単にするために、回答では名前の代わりに ID を使用しました。

プロジェクトの残りの部分で頑張ってください。

于 2013-10-11T12:57:59.973 に答える