以下的工作只是现在。

<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;
}

正如你可以看到,没有什么特别的;只是颜色和美丽的东西。
我点击蓝色的编辑按钮,它触发了果回发就好了。...在铬!
但如果我做同样在IE8,它只是做什么;甚至没有检测点击。

帮助查明问题,我删除标记和保存的只是字"编辑",它的工作只是现在IE8作为一个简单强调了链接;回发火灾。

那么,为什么不能IE8接受任何内LinkButton?

有帮助吗?

解决方案

为什么使用LinkButton如果你需要处理回发看起来像个按钮在同一时间?为什么不让它只是一个按钮?在我看来,只有理由使用另一个是貌。在功能上,他们都应触发回发。

其他提示

你在做什么不是你 应该 要做,但我想说的是,IE可能是在这里最接近“正确”的人。

您不应在提供链接的其他元素中嵌套按钮元素。您可以简单地删除 button 从内部 LinkButton, ,将onclick附加到它上,使造型工作,这将是好的。

我说我认为IE的表现更接近“正确”的原因是因为它在执行您在最内向的标签上定义的工作。什么都没有。 (您没有对 button 元素,实际上)。但实际上,无论如何,这不是您应该在HTML中做的事情,因为我认为行为并不是首先定义的。

您想在这里实现什么?

您有一个带有嵌套HTML按钮的服务器端链接按钮?

当您想要一个时,链接很有用 超链接 能够执行寄回。

您是否看过渲染的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