2016-07-08 3 views
1

Я искал два дня, чтобы найти решение этой проблемы, и я не могу найти ничего, что сработает для меня. У меня есть LinkButton, который отключается при загрузке страницы. Я отключив кнопку следующим образом:Каков правильный способ повторного включения ASP.NET LinkButton после его отключения?

$("#BtnSubmit").prop("disabled", true); 
$("#BtnSubmit").removeAttr("enabled"); 

Когда пользователь заполняет все необходимые поля, я пытаюсь повторно включить LinkButton так:

$("#BtnSubmit").removeAttr("disabled"); 

Однако это не Работа. Я посмотрел на сгенерированную разметку, и кажется, что у LinkButton атрибут href удален, если он установлен на disabled. Простое удаление атрибута disabled не работает. Я также попытался добавить атрибут enabled так:

$("#BtnSubmit").attr("enabled", "true"); 

Однако, это не работает.

Что мне не хватает? Кнопка, безусловно, снова включена с точки зрения дизайна. Из-за его внешнего вида disabled его внешний вид enabled просто прекрасен, но он не получает свой атрибут href. Я попытался вручную добавить href, но это также не работает. Большинство решений, которые я нашел, просто касаются того, как отключить кнопку; ни один из них, похоже, ничего не упоминает о повторном включении. Какие-либо предложения?

+0

Возможный дубликат [Включить/отключить состояние LinkButton с помощью jquery] (http://stackoverflow.com/a/13163923/123422) –

+0

@PaulAbbott Я сейчас тестирую это решение. Благодарю. – ic3man7019

ответ

1

У меня была аналогичная проблема, недавно. Это работает для меня:

$("#BtnSubmit").prop("disabled", true); 
    $("#BtnSubmit").prop("disabled", false); 

Обратите внимание, что свойство HTML был установлен, как это на странице загрузки:

<input type="submit" id="BtnSubmit" disabled="disabled"/> 
+0

Я пробовал это, но, к сожалению, это не сработало. У меня были те же проблемы, что и раньше. – ic3man7019

2

Было бы хорошо, если бы вы могли предоставить нам разметке ASPX и его код позади в вашем посте. Существует много способов отключить/включить кнопку. Вы сделали это через серверную или клиентскую сторону? Моя догадка в том, что вы, вероятно, установили свойство Enabled на свой LinkButton на False, что объясняет, почему атрибут href также исчез.

Один из подходов, который вы могли бы рассмотреть, заключается в том, что вы можете зарегистрировать свой код javascript на стороне клиента в событии Page_Load, и когда страница перезагрузится, код будет выполнен.

Что-то вроде этого

var script = "$('#BtnSubmit').prop('disabled', true);"; 
ScriptManager.RegisterStartupScript(Page, GetType(), "mykey", "script", true); 

Надеется, что это помогает.

Смежные вопросы