我知道之前已经问过这个问题,因为我在过去几个小时内一直在寻找解决方案。 我的想法是我有一个显示文本值的表格单元格。点击事件后,该值将转换为输入字段,使其可编辑。
我的代码在Chrome上完美运行,但在FireFox中测试时会显示输入文字,但我根本无法编辑该字段。
这是我的代码:
function openInput(product_row) {
var qty = $('[name="order_product[' + product_row + '][quantity]"]').val();
text = '<input type="text" name="enter_order_product[' + product_row + '][quantity]" value="'+qty+'" style="text-align:right;width:30px;" />';
$( "#order_product_" + product_row + "_quantity" ).html(text + '<input type="hidden" name="order_product[' + product_row + '][quantity]" value="' + qty + '" />');
var input = $('[name="enter_order_product[' + product_row + '][quantity]');
input.focus();
}
在表格单元格上的点击事件上调用openInput函数。
我不得不说我试过这个解决方法没有运气
setTimeout(function() {
input.focus();
}, 0);
任何想法都会有所帮助。干杯!
答案 0 :(得分:2)
您的input
选择器格式错误,因为您错过了结束"]
:
var input = $('[name="enter_order_product[' + product_row + '][quantity]');
将其更改为:
var input = $('[name="enter_order_product[' + product_row + '][quantity]"]');