私は明確であることを願っています!
最初は Dynamic Data を使用しています。以下のコードは、電話番号用にパーソナライズされた TextBox です。
ブラジルの電話番号のマスクを作成するコードを以下に示します。ページを生成する動的データも使用しています。
<script type="text/javascript">
function mascaraTel(o, f) {
v_obj = o
v_fun = f
setTimeout("execmascaraTel()", 1)
}
function execmascaraTel() {
v_obj.value = v_fun(v_obj.value)
}
function mtel(v) {
v = v.replace(/\D/g, "");
v = v.replace(/^(\d{2})(\d)/g, "($1) $2");
v = v.replace(/(\d)(\d{4})$/, "$1-$2");
return v;
}
</script>
<asp:TextBox ID="TextBox1" runat="server" CssClass="slm_TextBox" Width="140px" />
そして、コードビハインドに以下のコードがあります
TextBox1.Attributes["onKeyDown"] = @"return mascaraTel(this, mtel);";
私はこれを聞くのが嫌いですが、このコードは、[新規] (ビジネス ロジックのいずれかのオブジェクトを作成する) をクリックしたときにのみページで機能し、一方、[編集] (ビジネス ロジックのいずれかのオブジェクトを編集) をクリックすると、上記のコードがロードされないため、ブラウザで「mascaraTel」は未定義と表示されます。
[編集] をクリックするとコードが読み込まれず、[新規] をクリックすると正常に動作する理由を教えてもらえますか?
前もって感謝します!