尝试使用ASP隐藏值和javascript禁用CSS按钮
我使用ASP.NET PasswordRecovery方法,并有几个CSS按钮来提交表单或取消请求 我还获取用户的电子邮件地址以传递给PasswordRecovery方法的successtext值,将ASP hiddenvalue设置为success,然后尝试使用javascript根据该值禁用按钮 问题在于,在初始页面加载时,此hiddenfield值似乎被设置为“success”,即使在查看呈现页面的源时没有显示任何值 可能有更好的方法,但我已经尝试了几种不同的方法,这是成功的,我无法更改按钮的视图状态尝试使用ASP隐藏值和javascript禁用CSS按钮,javascript,asp.net,Javascript,Asp.net,我使用ASP.NET PasswordRecovery方法,并有几个CSS按钮来提交表单或取消请求 我还获取用户的电子邮件地址以传递给PasswordRecovery方法的successtext值,将ASP hiddenvalue设置为success,然后尝试使用javascript根据该值禁用按钮 问题在于,在初始页面加载时,此hiddenfield值似乎被设置为“success”,即使在查看呈现页面的源时没有显示任何值 可能有更好的方法,但我已经尝试了几种不同的方法,这是成功的,我无法更改按
受保护的void resetuserpassword\u SendingMail(对象发送者,MailMessageEventArgs e)
{
e、 Message.IsBodyHtml=true;
e、 Message.Subject=“密码协助”;
TextBox txtUserName=(TextBox)resetuserpassword.UserNameTemplateContainer.FindControl(“用户名”);
字符串UserEmailID=Membership.GetUser(txtUserName.Text.Trim()).Email;
resetuserpassword.SuccessText=“密码发送至”;
resetuserpassword.SuccessText+=UserEmailID;
ValueHiddenField.Value=“成功”;
window.onload=禁用按钮;
功能禁用按钮(){
var元素=document.getElementById('ContentPlaceHolderArea_ValueHiddenField');
if(typeof(element)!='undefined'&&element!=null){
if(document.getElementById('ContentPlaceHolderArea\u ValueHiddenField')。值='Success'){
var submitBtn元素=document.querySelector(“#submitBtn”);
var cancelbtneelement=document.querySelector(“#cancelBtn”);
submitbtnlelement.style.display=“无”;
cancelbtneElement.style.display=“无”;
}
}
}
函数clickSubmit(){
document.getElementById(“ContentPlaceHolderArea_resetuserpassword_UserNameContainerID_SubmitButton”)。单击();
}
函数clickCancel(){
window.location.replace(“~/Login.aspx”);
}
请输入您的用户名
*
提交
取消
javascript if语句将值“Success”分配给隐藏字段(单等号)
将其更改为(双等号):
就这样!谢谢你的快速反应和敏锐的目光!;-)
<script runat="server">
protected void resetuserpassword_SendingMail(object sender, MailMessageEventArgs e)
{
e.Message.IsBodyHtml = true;
e.Message.Subject = "Password Assistance";
TextBox txtUserName = (TextBox)resetuserpassword.UserNameTemplateContainer.FindControl("UserName");
string UserEmailID = Membership.GetUser(txtUserName.Text.Trim()).Email;
resetuserpassword.SuccessText = "Password sent to ";
resetuserpassword.SuccessText += UserEmailID;
ValueHiddenField.Value = "Success";
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolderArea" Runat="Server">
<script type="text/javascript">
window.onload = disableButtons;
function disableButtons() {
var element = document.getElementById('ContentPlaceHolderArea_ValueHiddenField');
if (typeof(element) != 'undefined' && element != null) {
if (document.getElementById('ContentPlaceHolderArea_ValueHiddenField').value = 'Success') {
var submitBtnElement = document.querySelector("#submitBtn");
var cancelBtnElement = document.querySelector("#cancelBtn");
submitBtnElement.style.display = "none";
cancelBtnElement.style.display = "none";
}
}
}
function clickSubmit() {
document.getElementById("ContentPlaceHolderArea_resetuserpassword_UserNameContainerID_SubmitButton").click();
}
function clickCancel() {
window.location.replace("~/Login.aspx");
}
</script>
<asp:hiddenfield id="ValueHiddenField" value="" runat="server"/>
<asp:hiddenfield id="ValueHiddenField" value="" runat="server"/>
<asp:PasswordRecovery ID="resetuserpassword" runat="server"
MailDefinition-BodyFileName="~/ResetPasswordEmailTemplate.html"
OnSendingMail="resetuserpassword_SendingMail"
successtext="Password sent to email address on record."
Width="300px" Font-Names="Arial" Font-Size="Small" UserNameTitleText="" >
<InstructionTextStyle Font-Names="Arial" Font-Size="Small" />
<MailDefinition BodyFileName="~/ResetPasswordEmailTemplate.html"></MailDefinition>
<UserNameTemplate>
<div><asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserName" style="display:none;"></asp:Label></div>
<div style="font: arial, verdana, sans-serif;font-size: 13px;padding-bottom: 5px;font-weight: bold;">Please Enter your Username</div>
<div><asp:TextBox ID="UserName" runat="server" style="width: 180px;"></asp:TextBox></div>
<div><asp:RequiredFieldValidator ID="UserNameRequired" runat="server" ControlToValidate="UserName" ErrorMessage="User Name is required." ToolTip="User Name is required." ValidationGroup="PasswordRecovery1">*</asp:RequiredFieldValidator></div>
<div><asp:Literal ID="FailureText" runat="server" EnableViewState="False"></asp:Literal></div>
<div style="display: inline;" ><asp:Button ID="SubmitButton" runat="server" CommandName="Submit" Text="Submit" ValidationGroup="PasswordRecovery1" style="display: none;" /></div>
</UserNameTemplate>
</asp:PasswordRecovery>
<div>
<div id="submitBtn" onclick="clickSubmit()">Submit</div>
<div id="cancelBtn" onclick="clickCancel()">Cancel</div>
</div>
</asp:Content>
if (document.getElementById('ContentPlaceHolderArea_ValueHiddenField').value = 'Success') {
...
}
if (document.getElementById('ContentPlaceHolderArea_ValueHiddenField').value == 'Success') {
...
}