JS初体験——GridViewのデータ検証
4414 ワード
今日はGridViewの編集状態で、セル内の修正データをどうやって検証しますか?
まずフォーラムでの正解を貼り付けます.
GridViewコントロールのデータ検証は、セル内のコントロールIDがページ生成されてから発生しにくいです.コントロールがある列番号からIDを取得することもできますが、私のこの初心者にとってはちょっと複雑です.
どうしましょうか?考えてみたら、thisパラメータに文章ができるかもしれないと思いました.そこで私はGOOGLEでJSのthisパラメータの使い方を調べました.その結果、最初の検索結果から次のような言葉が得られました.
JavaScriptでは、thisは通常、私たちが実行している関数そのもの、またはその関数が属するオブジェクト(実行時)を指します.
后半に注意されて、すぐに考えができました.
作り方は以下の通りですは、GRIDVIEWで修正時に検証が必要な列をテンプレート列に変更する. テンプレート列のコントロール属性 をフロントエンドコードで変更します.
JSコード を追加します.
はい、今GridViewの中のセルは焦点を失う時、検証を触発して、しかもユーザーが要求に合う値を入力していない前に、これは一つのデッドサイクルです.
まずフォーラムでの正解を貼り付けます.
function
Check(a) {
var
re
=
/
^([1-9][0-9]*|0)(\.[0-9]+)?$
/
;
return
re.exec(a)
!=
null
;
}
// : , , 0 , 。
GridViewコントロールのデータ検証は、セル内のコントロールIDがページ生成されてから発生しにくいです.コントロールがある列番号からIDを取得することもできますが、私のこの初心者にとってはちょっと複雑です.
どうしましょうか?考えてみたら、thisパラメータに文章ができるかもしれないと思いました.そこで私はGOOGLEでJSのthisパラメータの使い方を調べました.その結果、最初の検索結果から次のような言葉が得られました.
JavaScriptでは、thisは通常、私たちが実行している関数そのもの、またはその関数が属するオブジェクト(実行時)を指します.
后半に注意されて、すぐに考えができました.
作り方は以下の通りです
<
EditItemTemplate
>
<
asp:TextBox
ID
="TextBox1"
runat
="server"
Text
='<%#
Bind("Amount") %
>
' onblur="amountcheck(this)" Width="40">
</
asp:TextBox
>
</
EditItemTemplate
>
//this , ID
function
amountcheck(tb) {
if
(
!
Check(tb.value)) {
alert(
"
!
"
);
tb.focus();
}
}
はい、今GridViewの中のセルは焦点を失う時、検証を触発して、しかもユーザーが要求に合う値を入力していない前に、これは一つのデッドサイクルです.