このコードを使用して、jQuery を使用して var 値を取得しようとしました。なんらかの理由で name が null または undefined に等しくなり、それを理解できないようです。
<asp:TextBox
ID="Text_Email"
runat="server"
CssClass=""
Width="234px">Email</asp:TextBox>
var name = $("#<%=Text_Email.ClientID%>").value; // name == undefined
これが私のメインスクリプトです:
$(document).ready(function () {
$("#<%=send_info.ClientID%>").click(function () {
// var name = document.getElementById("#<%=Text_Name.ClientID%>").value;
var name = $("#<%=Text_Email.ClientID%>").value;
var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
if (reg.test(name) == false) {
$(this).val("");
$("#error_email_adress").removeClass('email_valid');
$("#error_email_adress").addClass('email_invalid');
return false;
} else {
$("#error_email_adress").removeClass('email_invalid');
$("#error_email_adress").addClass('email_valid');
alert("Message sent");
return true;
}
});
});
この部分も私を混乱させます。なぜこれが起こるのですか?ここで名前が定義されている理由を誰かに説明してもらえますか?
$("#<%=Text_Email.ClientID%>").click(function () {
var name = this.value;//name != undefined;
});
ここでは name は定義されていません
var name = $("#<%=Text_Email.ClientID%>").value; // name == undefined;
助けてくれてありがとう。