Функция JavaScript не определяет ошибку в файле ветки Symfony3
Я использую Symfony3 для своего проекта, и я сталкиваюсь с ReferenceError: optionOneChange не является ошибкой.
Вот мой файл HTML Twig:
{% extends 'base.html.twig' %}
{% block body %}
<p id="question">{{ questions[0].desc }}</p>
<form id="form">
<input type="radio" id="option1" onclick="optionOneChange(1)"> {{ questions[0].ans1}}<br>
<input type="radio" id="option2" onclick="optionOneChange(2)"> {{ questions[0].ans2}}<br>
<input type="radio" id="option3" onclick="optionOneChange(3)"> {{ questions[0].ans3}}<br>
<input type="radio" id="option4" onclick="optionOneChange(4)"> {{ questions[0].ans4}}<br>
</form>
{% endblock %}
{% block javascripts %}
<script src=" {{ asset('js/playGame.js') }}"></script>
{% endblock %}
и вот файл playGame.js:
function optionOneChange(option)
{
if (option == 1)
$(document).getElementById("question").innerHTML = "one";
else if (option == 2)
$(document).getElementById("question").innerHTML = "two";
else if (option == 3)
$(document).getElementById("question").innerHTML = "three";
else if (option == 4)
$(document).getElementById("question").innerHTML = "four";
}
Спасибо за вашу помощь.
1 ответ
Решение
Я думаю, что вам нужно поместить одну кавычку вокруг параметра, переданного в вашу функцию js следующим образом:
<form id="form">
<input type="radio" id="option1" onclick="optionOneChange('1')"> {{ questions[0].ans1}}<br>
<input type="radio" id="option2" onclick="optionOneChange('2')"> {{ questions[0].ans2}}<br>
<input type="radio" id="option3" onclick="optionOneChange('3')"> {{ questions[0].ans3}}<br>
<input type="radio" id="option4" onclick="optionOneChange('4')"> {{ questions[0].ans4}}<br>
</form>
Кроме того, вы публикуете вырезку и вставку из своего кода? Если так, я вижу проблему здесь:
<script src=" {{ asset('js/playGame.js') }}"></script>
Впереди есть дополнительное место, поэтому попробуйте это:
<script src="{{ asset('js/playGame.js') }}"></script>
Не уверен, помогает ли это или нет, но вы можете проверить.