使用jQuery更改可见的LinkBut​​ton

时间:2011-07-15 14:57:00

标签: jquery asp.net css

[说明] (抱歉它很长)

我有一个gridview,允许用户添加条目或编辑现有条目。单击任一选项(“添加”或“编辑”)时,将显示一个弹出窗口供用户设置新/现有项目的信息。

由于两个弹出窗口相同(除了编辑弹出窗口中的文本字段填充了可编辑数据),我决定只使用两个不同的LinkBut​​ton(一个点击时添加新记录,而另一个保存对当前记录所做的更改

但是,我需要一次只显示其中一个链接,具体取决于用户采取的操作(“添加”或“编辑”)。对于添加按钮,因为它只是打开一个空白弹出窗口,我不希望它转到代码隐藏,所以我使用jQuery将“编辑”保存按钮的显示设置为无,并且它工作正常。

但是,由于“添加”按钮不会激活代码隐藏,因此当我单击“编辑”按钮时,我无法在代码隐藏中将其可见性设置为false,因为然后单击“添加”按钮不会设置它为true,所以当点击'Edit'按钮再次触发可见性时,我需要使用jQuery。

[问题]

我的问题是,虽然此方法适用于用户点击“添加”按钮,但当用户点击“修改”时,它不会隐藏“添加” - “保存”链接?它确实设置了{编辑'的'{1}} - '保存'按钮,这就是为什么我发现它如此奇特。我使用Chrome的调试器,它已经到了那里,所以有人能告诉我什么是错的吗?

[CODE]

的.aspx

display:inline;

的jQuery

<%-- the edit button, located within a gridview --%>
<asp:LinkButton ID="lbEditButton" runat="server" OnClientClick="showEditLink();" Text="Edit" CommandName="editCmd" CommandArgument='<%# ... %>'></asp:LinkButton> 

<%-- the add button, located underneath the gridview --%>
<asp:Button ID="btnAddCert" runat="server" Text="Add Certification" OnClientClick="javascript:showAddLink(); return false;" />

<%-- the 'save' buttons, located within an ASPxPopupControl (DevExpress) --%>
<asp:LinkButton ID="lbAddSave" runat="server" CausesValidation="true" Text="Save" OnClick="lbAddSave_Click" />
<asp:LinkButton ID="lbEditSave" runat="server" CausesValidation="true" Text="Save" OnClick="lbEditSave_Click" />

1 个答案:

答案 0 :(得分:1)

我只有一个按钮,根据用户是否正在添加/编辑来设置文本和onClick。在你的javascript中添加大小写的东西是这样的:

function setUpForAdd() {
  var button = $('#buttonID');
  button.html('Add button text')
  button.click(addHandlerFunction);
}