我正在尝试将我们的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));"
如果我在这里不够清楚或错过了您需要查看的任何代码部分,请提前告知我并提前感谢。
答案 0 :(得分:0)
在我获得更多代表之前,我将不得不在这里回答你,而不是评论。一个很好的建议是保持你的代码,但不是使用链接按钮(可能导致你必须点击的位置的限制),你可以使用图像按钮并将imageurl属性分配给你的图片/图标。
由于两种类型的按钮之间的差异很小,因此您根本不需要改变太多。
如果有帮助,请告诉我。
-JJ
答案 1 :(得分:0)
如果有人发现这一点,并想知道如何解决它。
我删除了表外的LinkButton。使用表onclick属性,我创建了一个新的Javascript函数,它传递了LinkButton 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();
}