2016-01-29 66 views
0

我有以下的javascript代码:未捕获的语法错误:之后参数列表丢失)JavaScript错误

var table = "<tr>" + 
    "<td style='width:48%' class='ads-details-td'><div>" + 
    "<p><strong> <a href='#' onclick='showServiceInfo(" + data.services[i].service_name + ")'"+ data.services[i].service_name + "</a> </strong></p>" + 
    "</div></td>" + 
    "<td style='width:16%' class='price-td'><div><strong> <input type='number' min='1' value='1' id='serviceQuantity"+data.services[i].service_identification+"' onchange='computePrice("+ data.services[i].service_identification+")' ></strong></div></td>" + 
    "<td style='width:16%' class='price-td'><div><strong><p id='servicePrice"+data.services[i].service_identification+"'>"+data.services[i].service_price+"</p> </div></td>" + 
     "<td style='width:10%' class='action-td'><div>" + 
     "<p> <a class='btn btn-primary'> <i class='fa fa-shopping-cart'></i> Add </a></p>" + 
     "</div></td>" 

和我的javascript功能

function showServiceInfo(x) 
{ 
    alert(x) 
    console.log(x) 
} 

这里

data.services[i].service_name 

是一个变量我从ajax请求中获取。 我无法理解我错过了或增加了额外的)

+0

加起来你的问题的的jsfiddle更好地理解。 – ameenulla0007

+0

您还错过了关闭''标签 – mezmi

回答

2

你是不是缺少一个),但是,你缺少的>的链接。您还会在放入该函数中的变量周围缺少引号,并且如果值data.services[i].service_name是不是变量名称的字符串,则这也会导致错误,因为该变量未定义。

"<a href='#' onclick='showServiceInfo(" + data.services[i].service_name + ")'"+ data.services[i].service_name + "</a>" 

应该

"<a href='#' onclick='showServiceInfo(\"" + data.services[i].service_name + "\")'>"+ data.services[i].service_name + "</a>" 
+0

感谢您的回复。我添加你的代码,但仍然有相同的错误。 – retiremonk

+0

是的,我认为这可能是别的。这就是为什么我对印刷错误犹豫不决,并实际测试我写的东西。我得到的只是没有右括号,表格格式不正确,链接甚至不可见,但没有控制台错误。使用括号,我得到一个关于变量未被定义的错误。将编辑与此修复。但我没有像你那样得到同样的错误。 – jonhopkins

+0

我更改了data.services [i] .service_name的值。我创建一个变量并为其赋值并将其传递给该函数。它工作完美,但每当我尝试从JSON响应传递值时,我都会得到相同的错误。 – retiremonk

相关问题