我在JS中有这个功能
<script>
var currentLocation = window.location.href;
function AddCardToTrello() {
Trello.addCard({
url: currentLocation,
name: String({{ soproduct.product }}),
due: {{ soproduct.required_date|date:"SHORT_DATE_FORMAT" }}
});
}
</script>
这给了我这个错误
参数列表之后的Uncaught SyntaxError:missing)
这是解析后的样子
<script>
var currentLocation = window.location.href;
function AddCardToTrello() {
Trello.addCard({
url: currentLocation,
name: String(1 4343rfcdc 54446),
due: 07/30/2016
});
}
</script>
错误在此行
name: String(1 4343rfcdc 54446),
当值为id(数字)时,它工作正常,我没有收到任何错误。
可能是什么问题?
答案 0 :(得分:1)
可能是这样的:
function AddCardToTrello() {
Trello.addCard({
url: currentLocation,
name: String("{{ soproduct.product }}"),
due: "{{ soproduct.required_date|date:'SHORT_DATE_FORMAT' }}"
});
甚至
function AddCardToTrello() {
Trello.addCard({
url: currentLocation,
name: "{{ soproduct.product }}",
due: "{{ soproduct.required_date|date:'SHORT_DATE_FORMAT' }}"
});
答案 1 :(得分:1)
发生此错误是因为Javascript引擎不知道'1 4343rfcdc 54446'是一个字符串,因此您需要用引号将其包装起来。如果你这样做,你将不需要String构造函数,因为它已经是一个字符串。
Trello.addCard({
url: currentLocation,
name: "{{ soproduct.product }}",
due: "{{ soproduct.required_date|date:"SHORT_DATE_FORMAT" }}"
});
答案 2 :(得分:1)
可能你缺少引号来表示它的字符串写得像;
name : "1 4343rfcdc 54446",