I、次のコードを有する:jQueryの - 変更が行われるトリガー変化手動
<div>
<label>Location</label>
<asp:TextBox ID="Location" runat="server" CssClass="form-control" ClientIDMode="Static" placeholder="Enter location"></asp:TextBox>
</div>
<div>
<label >Address</label>
<asp:TextBox ID="Address" runat="server" CssClass="form-control" ClientIDMode="Static" placeholder="Enter the address"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ErrorMessage="Address is Required" Display="Dynamic" ControlToValidate="Address" CssClass="field-validation-error" EnableClientScript="True"></asp:RequiredFieldValidator>
</div>
<asp:Button ID="Submit" runat="server" Text="Save" OnClick="btnSubmit_Click" CssClass="btn btn-primary" />
<script>
$("#Location").on('change', function (e) {
var location = $("#Location").val();
$("#Address").val(location).trigger("change");
});
$("#Address").on('change', function (e) {
// do some other stuff
});
</script>
アドレスフィールドは位置フィールドの値とjQueryを介して移入されます。
フィールドを入力せずにsubmitをクリックすると、クライアント側の検証が始まり、Addressコントロールの下にエラーメッセージが表示されます。
[場所]フィールドに値を入力すると、jQueryが起動し、[アドレス]フィールドに値が設定されますが、以前のエラーメッセージはクリアされません。これを解決するには、.trigger("change");
メソッドを使用します。
.trigger("change")
を使用するたびに、次の機能を起動:
$("#Address").on('change', function (e) {
// do some other stuff
});
私は唯一の入力は、jQueryのではなく手動で変更された唯一の変更イベントハンドラのアドレスを発射します。
どうすればこの問題を解決できますか?
。エラー時に入力に属性を追加しますか? – Toxide82