Вопрос

Следующие работает просто в Chrome.

<asp:LinkButton runat="server" ID="lbEdit" OnClick="lbEdit_Click">
    <button type="button" class="edit">
         Edit
    </button>
</asp:LinkButton>

И вот CSS для кнопки и его подкласса.

button
{    
    padding: 3px;
}
button.edit 
{
    background:#3f6096;
    border:none;
    font:10px verdana;
    color:#fff;
    width:71px;
    margin-top:3px;
}

Как вы можете видеть, ничего особенного; просто цвета и красивые вещи.
Я нажимаю на кнопку Blue Edit, и она загорается поступлению OnClick просто отлично .... в Chrome!
Но если я сделаю то же самое в IE8, это просто ничего не делает; даже не обнаруживает клик.

Чтобы помочь точно определить проблему, я удалил тег и сохранил только слово «редактирование», и он работает просто отлично в IE8 в виде простой подчеркнутой ссылки; обратные пожары.

Итак, почему IE8 не может принять что-нибудь в LinkButton?

Это было полезно?

Решение

Зачем использовать LinkButton, если вам нужно обрабатывать поступление и выглядеть как кнопка одновременно? Почему бы не сделать это просто кнопкой? Мне кажется, что единственная причина использовать один над другой внешностью. Функционально, они оба должны вызвать обратную связь.

Другие советы

Что ты делаешь, не то, что вы предполагаемый делать, но я бы сказал, что IE, наверное, ведет себя ближе к «правильно» здесь.

Вы не должны устанавливать элементы кнопок внутри других элементов, которые предоставляют ссылки. Вы можете просто удалить button изнутри LinkButton, Вместо этого прикрепите его onClick, сделайте стилью работу, и это будет хорошо.

Причина, по которой я говорю, я думаю, что IE ведет себя ближе к «правильно», потому что это делает то, что вы определили на внутреннем теге; что ничего нет (Вы не прикрепляли никаких действий к button Элемент, на самом деле). Но на самом деле, это не то, что вы должны делать в HTML в любом случае, так как я не думаю, что поведение определяется в первую очередь.

Что вы пытаетесь достичь здесь?

У вас есть кнопка ссылки на серверу, со вложенной HTML-кнопкой?

LinkButton полезен, когда вы хотите гиперссылка Чтобы иметь возможность выполнить обратную связь.

Вы посмотрели на оказанные HTML? Я не знаю, есть ли кнопка внутри привязки, даже действительна HTML.

Если вы хотите обрабатывать обратную связь с помощью определенного события сервера, просто используйте кнопку ASP:.

Если вы не можете, просто используйте обычную кнопку HTML.

Ты можешь использовать CSSClass:

<asp:TemplateField HeaderText="Opciones">
    <ItemTemplate>
    <asp:LinkButton runat="server" Text="Hola!" CommandName="Deshabilitar" 
        CssClass="btn btn-primary"
        CommandArgument='<%# Item.Id %>' />
    </ItemTemplate>
</asp:TemplateField>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top