动态添加到表的文本框的行为类似于只读字段

时间:2014-10-15 04:48:30

标签: javascript jquery

我的表有行扩展选项。在行上展开添加一个带有单元格的表行,并使用jquery将文本框附加到同一单元格。这工作正常,但动态添加的文本框的行为类似于只读字段。请让我知道相同的解决方案。

<table>
  <tr><td> href field here</td><td></td><td></td></tr>
</table>

点击href字段添加行,其中包含一个单元格和文本框

<tr><td colspan=3 id="test-cell"></td></tr>

将此附加到表附加文本框到id为&#34; test-cell&#34;

的单元格后
$('#test-cell').append('<input type="text" size="10" value="abd" id="test-input" />');

最后表变为

<table>
  <tr><td> href field here</td><td></td><td></td></tr>
  <tr><td colspan=3 id="test-cell"><input type="text" size="10" value="abd" id="test-input" /></td></tr>
</table>

在Chrome,FF,IE 11中测试过相同的代码。

我正在使用的代码(我提取了这段代码并用硬代码替换了通用变量)

var table = $('#C1tbl');
var selectedRow = table.find('tbody>tr.grid-row:eq(2)');
var expandRow = $('<tr class="ag-row-expand"><td colspan="3" id="test-cell"></td></tr>');
expandRow.attr('id', Util.getNextComponentId());
selectedRow.after(expandRow);
var expandCol = expandRow.find('>td');
expandCol.html('<input type="text" size="10" value="abd" id="test-input" />');

此后我的网页不允许编辑文本。

2 个答案:

答案 0 :(得分:0)

可能你可以使用$(&#39; #test-cell&#39;)。after()。html(&#39;&lt; input type =&#34; text&#34; size =&#34 ; 10&#34; id =&#34; test-input&#34; /&gt;&#39;)

答案 1 :(得分:0)

这只是我的错误。 Table具有keydown事件,可以使用导航键在各行之间进行操作,其中函数为所有键调用event.preventDefault。