gpt4 book ai didi

javascript - symfony twig javascript函数未定义

转载 作者:行者123 更新时间:2023-11-28 19:23:35 25 4
gpt4 key购买 nike

我正在尝试在我的 Twig 中使用外部 JS 文件。目标只是验证客户的输入。当我直接将脚本放入 Transfert.html.twig 时,我的脚本执行得很好,但是当我使用具有 assetic 的外部文件时,什么也没有发生。 assetic 创建的链接很好(当我在网页源代码中单击它时,我可以看到我的脚本)。但是 firebug 说

"SyntaxError: expected expression, got '<'
<script type="text/javascript">" "ReferenceError: verifyMontant is not defined"

我将我的包注册到 app/config/config.yml 中:“bundles: [FASTTransfertBundle]”,所以我想这里没有问题

现在这是我的代码:Transfert.html.twig:

{# src/FAST/TransfertBundle/Resources/views/Default/Transfert.html.twig #}
{% extends "FASTTransfertBundle::layout.html.twig" %}
{% block title %}{{ parent() }} - Index{% endblock %}
{% block body %}
{{ form_label(form.montant) }} {{ form_widget(form.montant,{'attr':{'onblur':'verifyMontant(this)'}}) }}
{% javascripts '@FASTTransfertBundle/Resources/public/javascript/verifyTransfert.js' %}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
{% endblock %}

这是我的 JavaScript 文件:

<script type="text/javascript">
//color if wrong
function changeColor(field,error)
{
if(error)
field.style.backgroundColor = "#fba";
else
field.style.backgroundColor = "";
}

function verifyMontant(field)
{
var montant= field.value.replace(/\D+/g,'');
var regex = /^\-?[0-9]*\.?[0-9]+$/;
if(!regex.test(field.value)){
changeColor(field, true);
return false;
}
else if(montant.length != 11){
changeColor(field, true);
return false;
}
else{
changeColor(field,false);
return true;
}
}
</script>

最佳答案

您必须删除

<script type="text/javascript">

来自您的 JavaScript 文件。

关于javascript - symfony twig javascript函数未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28330711/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com