我创建了一个动态库存表,它加载了一个包含产品列表的表,其中一个是一个html复选框,我已经将复选框链接到一个javascript函数,使用onclick事件并传递产品ID功能()。
当产品ID只是一个数字,如12345时,Javascript工作正常,但当ID是混合字符串,如12345-HIGH时,Javascript失败。我需要保持ID完整,因为它以后使用,所以我无法更改或转换它?
我似乎无法找到将混合字符串传递给javascript函数。我不确定这是否有帮助,但ID通常会有一个' - '和文本,如果有的话总是不同。
答案 0 :(得分:1)
如果您知道您的字符串将始终以您要提取的数字部分开头,则可以使用parseInt()
并利用Javascript解析的性质来仅提取数字部分:
parseInt("12345-HELLO")
将以整数形式返回12345。但是
parseInt("HELLO-12345-HELLO")
将返回NaN
答案 1 :(得分:1)
很难在不知道每个可能的字符串组成的情况下知道正确的答案,但听起来它会
-
后跟字符串如果这些是真的,你可以这样做:
var productId = "12345-HIGH";
var num = productId.split('-')[0];
此时它仍然是一个字符串,但您可以将其转换为parseInt(num)
的整数,如jxpx777所示。