2016-07-15 54 views
0

我有一個表,當我點擊一個按鈕時,我想將contenteditable設置爲true,然後將焦點放在td元素上客戶端看到單元格中的光標閃爍。無法集中在我的表中點擊事件的​​元素

我似乎無法獲取焦點對LicenseName電池工作。我知道'tableData'變量包含正確的元素,我在瀏覽器調試器中檢查過它。

這是我試過的。

editLicensesDetails = function (e) { 
 
     var tableRow = $(e.target).parent().parent(); 
 
     $(tableRow).css('background-color', '#dff0d8'); 
 
     $(tableRow).children('[contenteditable]').attr("contenteditable", "true"); 
 
     var tableData = $(tableRow).children('[contenteditable]')[0]; 
 
     $(tableData).focus(); 
 
    }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table id="tableLicenseDetails" style="width:100%;"> 
 
        <tr> 
 
         <th>Edit</th> 
 
         <th>Delete</th> 
 
         <th>Name</th> 
 
         <th>Description</th> 
 
         <th>Product</th> 
 
         <th>Unit Of Measure</th> 
 
         <th>Variable Rate</th> 
 
        </tr> 
 
        <tr> 
 
          <td style="display:none;">@license.LicenseId</td> 
 
          <td> 
 
           <i class="fa fa-pencil" aria-hidden="true"></i> 
 
          </td> 
 
          <td> 
 
           <i class="fa fa-trash" aria-hidden="true"></i> 
 
          </td> 
 
          <td contenteditable="false">@license.LicenseName</td> 
 
          <td contenteditable="false">@license.LicenseDescription</td> 
 
          <td>@license.TradePulseProductName</td> 
 
          <td>@license.LicenseUnitOfMeasureTypeName</td> 
 
          <td>@license.IsVariableRate</td> 
 
         </tr> 
 
       </table>

+0

? – bwyn

回答

0

您的代碼是否正常工作。這意味着什麼是錯的,當你調用editLicensesDetails功能

var tableRow = $('tr'); 
 
    $(tableRow).css('background-color', '#dff0d8'); 
 
    $(tableRow).children('[contenteditable]').attr("contenteditable", "true"); 
 
    var tableData = $(tableRow).children('[contenteditable]')[0]; 
 
    $(tableData).focus();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tr> 
 
    <td contenteditable="false">LicenseName</td> 
 
    <td contenteditable="false">LicenseDescription</td> 
 
    
 
    </tr> 
 
</table>

您使用的是什麼瀏覽器
+0

我知道我在editLicenseDetails函數和變量'tableData'中獲得了正確的數據,我有正確的元素(​​)。我還能看到什麼? – user1186050

+0

@Tushar Gupta:您的代碼段使用Google Chrome瀏覽器適用於我,但tds無法修改,也無法通過Internet Explorer獲得關注。 – bwyn

相關問題