单击一次后禁用按钮助手(MVC)

时间:2015-09-25 12:09:08

标签: javascript jquery css asp.net-mvc asp.net-mvc-4

我有一个按钮(自定义帮助器),我想在单击后禁用它,并在禁用它时为其应用样式(css和特殊文本)。

我的助手使用禁用脚本的代码段:

    var sb = new StringBuilder();
         sb.AppendFormat("<script>$(function(){{ $('#{0}').one('click',function(){{ $(this).replaceWith"
        + "('<input type=\"submit\" id=\"'+ $(this).attr('id') + '\" value=\"' + $(this).val() + '\"class=\"btn-disabled btn "
        + "btn-full-mobile\" disabled=\"disabled\" onclick=\"return false;\" />' )}}); }});</script>", style.Id);
        sb.AppendFormat("<input type=\"submit\" id=\"{0}\" value=\"{1}\" {2}>", style.Id, style.Text, this.CalculateCssClass(style));
        TextWriter.WriteLine(sb.ToString());

我希望在禁用它时添加此样式(我希望转换为MVC的webform自定义控件的代码)

protected override void Render(HtmlTextWriter writer)
{
    this.CssClass = this.CalculateCssClass();
    // if not disabled text specified just keep the value of the active button  
    const string DisabledButton = "<input type=\"submit\" id=\"{0}\" value=\"{1}\" class=\"btn-disabled btn btn--full-mobile\" disabled=\"disabled\" onclick=\"return false;\" >";
    base.Render(writer);
    writer.Write(DisabledButton, this.ClientID + "_Disabled", this.DisabledText ?? this.Text);
}

那么将它放在第一个代码中的哪个位置?

0 个答案:

没有答案