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)")'
当通过 "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)")'