如何将字符串参数发送到javascript函数

时间:2014-05-21 10:10:00

标签: javascript string function parameters

我正在尝试将字符串值传递给javascript函数,但它显示语法错误。我的代码在

之下
product_row +='<td><input type="text" name="edit_product_type" 
id="edit_product_type_'+this.id_sale_order+'" value="'+this.product_type+'" 
onblur="updateProduct(\'' + this.id_sale_order + '\','edit');" rel="edit" />';

错误

SyntaxError: missing ; before statement
..." onblur="updateProduct(\'' + this.id_sale_order + '\','edit');" rel="edit" />'

5 个答案:

答案 0 :(得分:0)

阅读this回答。

以下是一个例子:

'<input type="button" onClick="gotoNode(\'' + result.name + '\')" />'

在您的情况下,您可能希望将edit作为字符串传递,因此请更改此

product_row +='<td><input type="text" name="edit_product_type" 
id="edit_product_type_'+this.id_sale_order+'" value="'+this.product_type+'" 
onblur="updateProduct(\'' + this.id_sale_order + '\','edit');" rel="edit" />';

到这个

product_row +='<td><input type="text" name="edit_product_type" 
id="edit_product_type_'+this.id_sale_order+'" value="'+this.product_type+'" 
onblur="updateProduct(\'' + this.id_sale_order + '\',\'edit\');" rel="edit" />';

使用了逃避反斜杠。

答案 1 :(得分:0)

检查拼写错误:

onblur="updateProduct(\'' + this.id_sale_order + '\',\''+edit+'\');"

或:onblur="updateProduct(\'' + this.id_sale_order + '\',\'edit\');"

取决于edit是否为变量名或字符串

答案 2 :(得分:0)

您需要在onblur函数中输入正确的单引号,例如

onblur="updateProduct(\"' + this.id_sale_order + '\",\"edit\");" rel="edit" />

您可以同时使用单引号和双引号,但请务必小心使用

答案 3 :(得分:0)

你缺少引号

    product_row +='<td><input type="text" name="edit_product_type" 
id="edit_product_type_'
+this.id_sale_order
+'" value="'
+this.product_type
+'" onblur="updateProduct(\'' 
+ this.id_sale_order 
+ '\',\'edit\');" rel="edit" />';

答案 4 :(得分:0)

如果你分解你的代码,你会在倒数第二行找到问题,如果你删除“编辑”这个词就不会出现错误,如果你把它放在双引号中,你就不会得到错误但是如果你把它放在单引号中,你会收到错误

product_row +='<td><input type="text" 
name="edit_product_type" 
id="edit_product_type_'+this.id_sale_order+'"
value="'+this.product_type+'" 
onblur="updateProduct(\'' + this.id_sale_order + '\',

\'edit \');“//问题出现在这里,所以用”编辑“进行'编辑'

rel="edit" />';