Asp:应用于表onclick的LinkBut​​ton href值

时间:2011-06-07 08:47:56

标签: c# javascript asp.net hyperlink href

我正在尝试将我们的Web应用程序中的按钮国际化,到目前为止,我已经能够使用精灵图像构建我们的按钮并应用相关的css类来构建按钮。

我在下面的结构中列出了这个:

<table cellpadding="0" cellspacing="0" class="pwbtn" onmouseout="this.className='pwbtn';"
    onmouseover="this.className='pwbtnh';">
    <tr>
        <td class="a1">
        </td>
        <td class="a2" onclick="CallShowBlocker()">
            <asp:linkbutton id="ButtonNext" onclientclick="PreNavigationScript();" runat="server"
                cssclass="RemoveLinkStyle"></asp:linkbutton>
        </td>
        <td class="a3">
        </td>
        <td class="spacer">
        </td>
    </tr>
</table>

此时按钮按预期显示,但用户必须完全按下该按钮的文本才能触发其事件。

我想将linkbutton的href值应用于onlcick表,因此当用户点击图像中的任何位置时,它将触发事件。

此外,我的href值是通过C#中的事件处理程序构建的,并产生以下href值:

"javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions('ContWizard2$Wizard1$cFooter$ButtonNext', '', true, '', '', false, true));"

如果我在这里不够清楚或错过了您需要查看的任何代码部分,请提前告知我并提前感谢。

2 个答案:

答案 0 :(得分:0)

在我获得更多代表之前,我将不得不在这里回答你,而不是评论。一个很好的建议是保持你的代码,但不是使用链接按钮(可能导致你必须点击的位置的限制),你可以使用图像按钮并将imageurl属性分配给你的图片/图标。

由于两种类型的按钮之间的差异很小,因此您根本不需要改变太多。

如果有帮助,请告诉我。

-JJ

答案 1 :(得分:0)

如果有人发现这一点,并想知道如何解决它。

我删除了表外的LinkBut​​ton。使用表onclick属性,我创建了一个新的Javascript函数,它传递了LinkBut​​ton clientID。

单击该按钮时,ID将传递给Javascript函数,我们触发link.click()以执行链接操作。见下文:

<asp:linkbutton id="LinkButton1" runat="server" causesvalidation="False" cssclass="RemoveLinkStyle"></asp:linkbutton>
<table cellpadding="0" cellspacing="0" class="pwbtn" onclick="CallShowBlocker(); ExecuteLink('<%=ButtonYes.ClientID %>');"
    onmouseout="this.className='pwbtn';" onmouseover="this.className='pwbtnh';">
    <tr id="trButtonYes" runat="server" visible="false">
        <td class="a1">
        </td>
        <td class="a2" onclick="CallShowBlocker()">
            <%= this.resourceManager.GetString("yes") %>
        </td>
        <td class="a3">
        </td>
        <td class="spacer">
        </td>
    </tr>
</table>

function ExecuteLink(linkID)
{ 
    var link = document.getElementById(linkID); 
    link.click();
}
相关问题