2016-05-25 87 views
1

我目前正在使用javascript处理项目。我有一个按钮将行插入到我的表中。每行有3个单元格。其中一个单元必须是可编辑的,所以用户可以在那里写一个链接。我怎样才能做到这一点?谢谢。 我不应该使用JQUERY! mycode的:Javascript:使单元格可编辑

<head> 
<style> 
table, td { 
border: 1px solid black; 
} 
</style> 
<script type="text/javascript"> 
function Insert(){ 
var x=document.getElementById("myTable"); 
var row=x.insertRow(1); 
var cell1=row.insertCell(0); 
var cell2=row.insertCell(1); 
var cell3=row.insertCell(2); 
cell1.innerHTML=document.getElementById("myTxt"); 


} 


</script> 
</head> 

<body> 
<input id="myTxt" name="Text1" type="text" /> 
<input onclick="Insert()" name="Submit1" type="submit" value="Insert" /> 

<table id="myTable"> 
<tr id="myRow"> 
<td>Cell 1</td> 
<td>Cell 2</td> 
<td>Cell 3</td> 

</tr> 
</table> 
</body> 
+2

当你生成你的表,你必须有它的窗体标记内。这样,您就可以在需要编辑的任何单元格中生成一个INPUT文本框。 – durbnpoisn

+0

为了扩展上述内容,没有可编辑的表格单元。您需要在单元格内输入文字控件。如果格式正确,它甚至可以看起来好像单元格本身是可编辑的。如果您计划提交内容,您也只需要它在表单标签内。如果您只是使用JavaScript处理它们,则表单不是必需的。 – SunKnight0

+0

@ SunKnight0如你所说,我如何在单元格内部有一个输入控件? –

回答

1

这将插入一个输入框到小区1在javascript:

function Insert() { 

var x=document.getElementById("myTable"); 
var row=x.insertRow(1); 
var cell1=row.insertCell(0); 

var txtBox = document.createElement("input"); 
txtBox.type = "text"; 
txtBox.name = "Text1"; 
txtBox.id = "myTxt"; 

cell1.appendChild(txtBox); 

var cell2=row.insertCell(1); 
var cell3=row.insertCell(2);  

} 
+0

你是对的!非常感谢 ! :) –

+0

这是您的问题的正确答案? –

+0

是的,这是正确的答案:) –