5

这是我的引导表。我只想使用 jQuery 将数据插入表中。单击特定单元格时,应该打开一个文本框以输入数据。我不想使用任何其他插件。

       <table class="table table-bordered">
         <thead class="mbhead">
           <tr class="mbrow">
             <th>A</th>
             <th>B</th>
             <th>C</th>
             <th>D</th>
           </tr>
        </thead>
        <tbody>
          <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
          </tr>
          <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
          </tr>
          <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
          </tr>
          <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
          </tr>
          <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
          </tr>
          <tr>
            <td></td>
             <td></td>
            <td></td>
            <td></td>
          </tr>
          <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
          </tr>
           <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
          </tr>          
         </tbody>
       </table>

帮帮我。谢谢。

4

1 回答 1

8

您基本上想向单击表格行的用户添加一个事件。在 jQuery 中,您可以像这样添加该事件

$("table.table tr td").bind("click", dataClick);

在 dataClick 函数中,您希望使行可编辑。你可以这样做。

function dataClick(e) {
    console.log(e);
    if (e.currentTarget.innerHTML != "") return;
    if(e.currentTarget.contentEditable != null){
        $(e.currentTarget).attr("contentEditable",true);
    }
    else{
        $(e.currentTarget).append("<input type='text'>");
    }    
}

我在这里有一个样本,http://jsfiddle.net/JPVUk/4/

希望这可以帮助

于 2013-03-01T06:23:49.203 回答