我正在尝试使用jquery全球化插件执行此操作,但是在浏览器中失败(客户端脚本错误,indexOf()
)
var newquantity = $.global.parseFloat(edititem.find('td.edititem-quantity > input'));
我曾经使用过像这样的jquery计算插件:
var newdiscount = edititem.find('td.edititem-discount > input').parseNumber();
并且它起作用了,但是由于它具有一些i18n选项,因此我正在转向jquery全球化,并且我想只使用这两个插件之一,而不是在同一站点上使用它们。
为什么第一个失败?
最佳答案
我猜您可能想要:
var newquantity = $.global.parseFloat(edititem.find('td.edititem-quantity > input').val());
获取
<input>
元素的值。编辑—更新:有时值可能为null:
var newquantity =
$.global.parseFloat(edititem.find('td.edititem-quantity > input').val() || '');
查看全球化的“ parseFloat()”函数的源代码,它对第一个参数(实际上必须是字符串,而不是jQuery对象)所做的第一件事就是调用“ .indexOf()”。如果传入的值为null,则将立即收到错误。