首页 > 解决方案 > aspx gridview 启用按钮

问题描述

这是我的asp代码

<asp:GridView ID="grdPresmetka" runat="server" BackColor="White"
        BorderColor="#3366CC" BorderStyle="None" BorderWidth="1px" CellPadding="4" 
         PageSize="15">
             <HeaderStyle BackColor="#003399" Font-Bold="True" ForeColor="#CCCCFF" />
             <RowStyle BackColor="White" ForeColor="#003399" />
             <SelectedRowStyle BackColor="#009999" Font-Bold="True" ForeColor="#CCFF99" />
             <PagerStyle BackColor="#99CCCC" ForeColor="#003399" HorizontalAlign="Left" />
             <Columns>
                  <asp:TemplateField HeaderText="Прикачи Документи"><ItemTemplate>
                    <asp:Button ID="lnkSelect" runat="server" Text="Прикачи" CommandName = "Select" OnClientClick = "return GetSelectedRow(this)" BackColor="#003399" Font-Bold="True" ForeColor="#CCCCFF" />
                  </ItemTemplate></asp:TemplateField>
                 <asp:TemplateField HeaderText="Провери"><ItemTemplate>
                    <asp:Button ID="lnkProveri" runat="server" Text="Прикачи" CommandName = "Select" OnClientClick = "return Proveri(this)" BackColor="#003399" Font-Bold="True" ForeColor="#CCCCFF" Enabled="False" />
                  </ItemTemplate></asp:TemplateField>
            </Columns>
        </asp:GridView>

这是我的 JavaScript 代码:

function GetSelectedRow(lnk) {
            var row = lnk.parentNode.parentNode;

            var id = row.cells[2].innerHTML;

            var url = "google.aspx?id=" + id + "&amp;status=00";
            popitup(url);

            return false;
        }

当(之后)我单击第一个按钮“ ID="lnkSelect" ”时,如何使用 JavaScript 制作第二个按钮“ ID="lnkProveri" " enable=true

PS。该项目使用 VB.Net,编译器为 IE=5

标签: javascriptasp.netvb.net

解决方案


有必要了解呈现的 HTML 代码

<td>
  <input type="submit" name="grdPresmetka$ctl12$lnkSelect" value="Прикачи" onclick="return GetSelectedRow(this);" id="grdPresmetka_lnkSelect_10" style="color:#CCCCFF;background-color:#003399;font-weight:bold;">
</td><td>
 <input type="submit" name="grdPresmetka$ctl12$lnkProveri" value="Прикачи" id="grdPresmetka_lnkProveri_10" disabled="disabled" class="aspNetDisabled" style="color:#CCCCFF;background-color:#003399;font-weight:bold;">
</td>

我们需要从一个按钮到另一个按钮。一种可能性是使用按钮位于同一表格行中的事实,并在下一个单元格中找到一个按钮(使用 jquery)。

$(lnk).closest("td").next().find('input').prop("disabled", false);

另一种可能性是使用 id 的构造方式grdPresmetka_lnkSelect_*grdPresmetka_lnkProveri_*. 当我们假设按钮 id 不包含下划线时,以下代码是一个解决方案

var items = lnk.id.split("_")             
items[items.length - 2] = "lnkProveri"
var elem = document.getElementById(items.join("_"));
elem.disabled = false;

请注意,两个代码片段都应该添加到函数的开头GetSelectedRow


推荐阅读