添加文本值以动态创建文本输入
Adding text values to dynamically create text inputs
这是所有内容,我试图提出一个建议,它可以改变行的颜色,但它只改变一次,之后的每一行都保留为 .odd 背景颜色。
基本上,我正在尝试动态添加行,这有效,屏蔽输入文本字段,这是有效的,从endtime_1
中获取值,并在单击addrow()
按钮时将其放在下一个添加行的starttime_2(dynamic add)
中。然后取endtime_2(dynamic add)
的值,并在单击addrow()
按钮时将其放入starttime_3(dynamic add)
,依此类推,依此类推。这是行不通的。我还想用背景样式为每个奇数行着色。
<script type="text/javascript">
function maskInput(){
$.mask.definitions['~'] = "[+-]";
$(".time").mask("99:99 aa");
$("input").blur(function() {
$("#info").html("Unmasked value: " + $(this).mask());
}).dblclick(function() {
$(this).unmask();
});
}
var clone;
function cloneRow(){
var rows=document.getElementById('TimeCard').getElementsByTagName('tr');
var index=rows.length-1;
clone=rows[index-0].cloneNode(true);
if (index % 2 !=0) { $(clone).addClass("odd"); }
var inputs=clone.getElementsByTagName('input'), inp, i=0,n ;
while(inp=inputs[i++]){
inp.name=inp.name.replace(/'d/g,'')+(index+1);
$('#starttime_'+index).attr('value',$('#endtime_'+index-1).attr('value'));
}
var select=clone.getElementsByTagName('select'), sel, i=0,n ;
while(sel=select[i++]){
sel.name=sel.name.replace(/'d/g,'')+(index+1);
}
maskInput();
}
function addRow(){
var tbo=document.getElementById('TimeCard').getElementsByTagName('tbody')[0];
tbo.appendChild(clone);
cloneRow();
}
function checkDOM(){
var rows=document.getElementById('TimeCard').getElementsByTagName('tr');
for(var i=0;i<rows.length;i++){
alert(rows[i].getElementsByTagName('input')[0].name);
}
}
onload=cloneRow;
</script>
<style type="text/css">
.odd { background-color:#CCC; }
</style>
<table border='0' id='TimeCard' width='950'>
<tr class="odd">
<td align="left" width="100"><b><i><u>Select Type</u></i></b></td>
<td align="left" width="20"> </td>
<td align="left" width="100"><b><i><u>Select Property</u></i></b></td>
<td align="left"> </td>
<td align="left" width="100"><b><i><u>Start Time</u></i></b></td>
<td align="left" width="100"><b><i><u>End Time</u></i></b></td>
<td align="left" width="20"> </td>
</tr>
<tr class="even">
<td align="left" width="100">
<select name="type_1" id="type_1" class="validate[required]">
<option selected value=''> -- Please Select -- </option>
<option value="office">Office</option>
<option value="work">Working</option>
<option value="drive">Driving</option>
<option value="break">Break</option>
<option value="lunch">Lunch</option>
<option value="personal">Personal</option>
</select>
</td>
<td align="left" width="20"> </td>
<td align="left" width="100">
<select name="propid_1" id="propid_1" class="validate[required]">
<option selected value=''> -- Please Select -- </option>
</select>
</td>
<td align="left"> </td>
<td align="left" width="100"><input type="text" class="time" id="starttime_1" name="starttime_1" size="10" /></td>
<td align="left" width="100"><input type="text" class="time" id="endtime_1" name="endtime_1" size="10" /></td>
<td align="center" width="20"><input type="button" value=' + ' onclick='addRow();' /></td>
</tr>
</table>
用纯 CSS 为表格行着色:
tr:nth-child(odd) {background-color:#CCC;}
否则,请提出有针对性的问题。
相关文章:
- onkeyup无法动态创建多个文本区域
- 文本表示法VS.构造函数,用于在JavaScript中创建对象
- 如何在 JavaScript 中创建输入文本框
- 如何在php中创建一个函数,该函数与文本区域一起工作,通过输入类似[color:red]的内容来打印具有等效颜色的文本
- 如何为动态创建的文本区域中输入的值更新ng模型
- 创建闪烁“;文本“;在javascript中
- 使用删除文本创建新行
- 使用其他页面上表单的文本创建链接
- 数组函数不适用于从元素文本创建的JavaScript数组
- 从空格分隔的文本创建和实现数组:AngularJS
- 由表达式文本创建的正则表达式是否共享单个实例
- 如何在 RaphaelJS 中根据需要为文本创建默认属性并链接其他属性
- 如何使用在用户输入后继续显示的前置文本创建文本字段
- 如何从 html 格式的文本创建元素
- 从文本区域中的选定文本创建列表html
- 在DIV中动态地围绕所选文本创建SPAN
- 在Jquery UI对话框中基于触发器锚点的文本创建动态按钮名称
- 如何在飞行中用文本创建链接?——JQuery初学者
- 从文本创建链接
- 如何仅为文本创建正则表达式模式