JS语法错误排查:formData中拼接nri变量获取addtcart值失败
解决JavaScript语法错误:Uncaught SyntaxError: Unexpected string
你的问题出在字符串拼接的方式上——直接把变量.nri.插在字符串中间的写法不符合JavaScript语法规则,这才触发了语法错误。
正确的实现代码
要在jQuery选择器里动态拼接变量,你需要用**加号(+)**来连接字符串和变量。调整后的代码如下:
// 先把nri的值单独提取出来,让代码更清晰 var nri = $('input[name=nri]').val(); var formData = { 'nri': nri, 'addtcart': $('input[name=addtcart' + nri + ']').val() };
关键改动说明
- 先单独存储
nri的值,避免重复调用$('input[name=nri]').val(),同时让逻辑更直观 - 用
+运算符把选择器字符串和nri变量拼接起来:'input[name=addtcart' + nri + ']',当nri为1时,会自动生成input[name=addtcart1]的选择器,完全符合你的需求
原代码出错的原因
你原来的写法$('input[name=addtcart'.nri.']')中,.是JavaScript里访问对象属性的操作符,不能用来直接拼接字符串和变量,引擎无法识别这种语法,所以抛出了"Unexpected string"的错误。
内容的提问来源于stack exchange,提问作者FCSB e Steaua
相关产品推荐
相关产品推荐

