SyntaxError: missing ) after argument list when onClick calling function and passing url as first argument. Javascript

SyntaxError: missing ) after argument list when onClick calling function and passing url as first argument. Javascript

当通过 "onClick" 中名为 cancelOrderByUrl 的函数的第一个参数传递 URL 时,出现此错误:

SyntaxError: missing ) after argument list

但是,如果要将 number 传递到 cancelOrderByUrl(**HERE**, not here, not here); 的第一个参数中,则没有错误,我的函数将执行。所以它与语法有关,我如何确保 URL 被封装为字符串? toString();不成功。有什么建议吗?

<script src="someScriptThatContainsFunctionBeingCalledInOnClick.js" charset="utf-8"></script> 
<script>
var someArray = [{cancel:"hhtps://api.somedomain.com/thisandthat/numbers", quantity:"12", price: "2.74"},{cancel:"hhtps://api.somedomain.com/thisandthat/numbers", quantity:"10", price: "2.71"}];
for (var i = 0; i < someArray.length; i++){

var orderDetails = '<td data-th="Cancel">' + '<button class="btn btn-cancel-order" onclick="cancelOrderByUrl('+someArray[i].cancel+', '+parseFloat(someArray[i].quantity).toFixed(2)+', '+parseFloat(someArray[i].price).toFixed(2)+')" >X</button>' + "</td>";

document.getElementById(someArray[i].created_at).innerHTML = orderDetails;

};
</script>

//if a number is passed instead of url, no problem

您可以尝试使用 string.Format() 函数。

onclick='@string.Format("cancelOrderByUrl(YOUR PARAMETERS)")'