Javascript / Html删除Listview中Textbox的禁用属性

时间:2013-01-31 01:13:31

标签: javascript html listview

我有一个asp:listview,用于数据库中的数据类型和地址。单击按钮时,我将按钮的innerhtml更改为不同的文本,我需要删除相应输入文本框中的类型和地址的禁用属性。发生的事情是,当我点击按钮时,它会删除列表视图中第一行的禁用属性,但不会删除我点击的那一行的相应值。例如,下面是listview的一个例子及其做法

输入“/ t / t / t / t / t / t / t”地址

TxtBox TxtBoxTxtBoxTxtBox EditBtn DeleteBtn

TxtBox TxtBoxTxtBoxTxtBox EditBtn DeleteBtn / **例如,如果我单击此编辑按钮,它将从上面的记录中删除禁用而不是此行

TxtBox TxtBoxTxtBoxTxtBox EditBtn DeleteBtn

<script type="text/javascript">
        function changeText(button) { 
            button.innerHTML="Save";              
            document.getElementById('Type').removeAttribute('disabled');
            document.getElementById('Address').removeAttribute('disabled');    
</script>

<body>  
  <div>Addresses</div>
   <br />   
        <div>
    <asp:ListView runat="server" ID="ListView1" >
    <EmptyDataTemplate>No records found.</EmptyDataTemplate>
        <LayoutTemplate>
            <table id="sort" style="border:solid 1px black;width:40%;">
                <thead>
                    <tr>
                        <th>
                            <a href="#">Type</a>
                        </th>
                        <th>
                            <a href="#">Address</a>
                        </th>

                    </tr>
                </thead>
                <tbody>
                    <tr id="itemPlaceholder" runat="server" />
                </tbody>
                <tfoot>
                </tfoot>
            </table>
        </LayoutTemplate>
        <ItemTemplate>
            <tr>
                <td>
                   <input size="8" type="text" ID="Type" disabled="disabled" value="<%# Eval("Type")%>" />
                </td>
                <td>
                   <input size="9" type="text" ID="Address" disabled="disabled" value="<%# Eval("street")%> <%# Eval("City")%> <%# Eval("State")%>" />                     
                </td>
                <td>
                   <button id="editBtn" type="button" onclick="changeText(this)">Edit</button> 
                </td>
            </tr>
        </ItemTemplate>
    </asp:ListView>
  </div>

1 个答案:

答案 0 :(得分:0)

获取当前tr,而不是文档:

  function changeText(button) { 
        var row=button.parentNode.parentNode;
        button.innerHTML="Save";              
        row.querySelector('#Type').removeAttribute('disabled');
        row.querySelector('#Address').removeAttribute('disabled');
  }