在克隆带有文本框的 html 行时,新文本框的触发器
On clone of html row with text box the trigger for the new textbox
我正在尝试在单击时创建一个重复的行,重复的行是该 html 表的最后一行,但问题是在新创建的行上,文本框不会触发,因为该类与原始类相同,但在按键时,数字函数添加逗号并检查字母未发生
演示 JS 小提琴
.html:
<table id='tbl'>
<tbody>
<tr>
<td>
<p>cell</p>
</td>
<td>
<input name="txtMSExMarCardFee2" type="text" class="Stylednumber">
</td>
</tr>
</tbody>
</table>
<input type="button" id="btnAdd" value="Add New Row"></button>
.JS
$("#btnAdd").on("click",function(){
var $tableBody = $('#tbl').find("tbody"),
$trLast = $tableBody.find("tr:last"),
$trNew = $trLast.clone();
$trLast.after($trNew);
});
String.prototype.replaceAll = function(search, replacement) {
var target = this;
return target.replace(new RegExp(search, 'g'), replacement);
};
$('input.Stylednumber').keyup(function() {
var input = $(this).val().replaceAll(',', '');
if (input.length < 1)
$(this).val('0.00');
else {
var val = parseFloat(input);
var formatted = inrFormat(input);
if (formatted.indexOf('.') > 0) {
var split = formatted.split('.');
formatted = split[0] + '.' + split[1].substring(0, 2);
}
$(this).val(formatted);
}
});
function inrFormat(val) {
var x = val;
x = x.toString();
var afterPoint = '';
if (x.indexOf('.') > 0)
afterPoint = x.substring(x.indexOf('.'), x.length);
x = Math.floor(x);
x = x.toString();
var lastThree = x.substring(x.length - 3);
var otherNumbers = x.substring(0, x.length - 3);
if (otherNumbers != '')
lastThree = ',' + lastThree;
var res = otherNumbers.replace(/'B(?=('d{2})+(?!'d))/g, ",") + lastThree + afterPoint;
return res;
}
>$('input.Stylednumber').keyup
函数将事件绑定到当前在 dom 中的元素。如果要将事件绑定到动态创建的元素,则必须指定全局范围(如body
),或者在这种情况下可以table#tbl
。
$('table#tbl').on('keyup', 'input.Stylednumber', function(){ ... });
这是小提琴:http://jsfiddle.net/kQpfE/268/
相关文章:
- 让文本输入幻灯片显示输入时的新文本输入?然后向后滑动
- jQuery在用新文本替换HTML文本时淡出HTML文本,而不是仅显示
- 在里面输入新文本后更新文本区域内容的值
- 在提交时更改按钮颜色,直到输入新文本
- Ajax在成功后将旧文本更改为新文本
- JavaScript无法用新文本替换文本
- 崇高的文本新行失去缩进
- 在当前工具提示文本 JQuery 旁边追加或添加新文本
- 在克隆带有文本框的 html 行时,新文本框的触发器
- 从文本区域中获取值,并将其放置在带有一些添加文本的新文本区域中
- 文本在单击时消失,但输入的新文本会消失
- 如何使用 Javascript 将文本从文本区域移动到新表中
- 在窗口大小调整时写入新文本大小的功能
- 我如何设置我的网页以接受文本字段的输入,并将其用作页面上的新文本
- 用span'换行文本节点;s、 如果出现新文本,则显示带有跨度的内部文本节点
- 如何将表单中的新文本值动态传递给jsp
- 在整个网站中查找字符串的一部分并替换为新文本
- 显示新文本的转换按钮
- 用新文本替换花括号
- 如何禁用添加新文本输入的按钮,以防止用户继续添加