У меня есть большой Ruby On Rails форму, которая имеет следующий вид частичной структуры (файл _form.html.erb)Выполняется одна функция JavaScript, но два нет?
<script language="javascript" type="text/javascript">
function myFunction1() {
... some js code here
}
function applyConfigs() {
... some js code here
}
</script>
<%= form_for(@test, :html => {:name => "Test", :id => "test_form"}) do |f| %>
... some Ruby code here
<div class="actions">
<input type=button value="Run Function1" onclick="myFunction1();">
</div>
... some Ruby code here
<div class="actions">
<input type=submit value="Apply" onclick="applyConfigs();">
</div>
<% end %>
В этой ситуации ни одна из функций не вызывается при нажатии кнопки «Выполнить» или FUNCTION1 Кнопки «Применить» (кнопки выделяют, но ничего не делают). Но если я ставлю каждую функцию в отдельном
<script>
</script>
поэтому имеющий 2 секции скрипт/сценарий, содержащий одну функцию каждого, то функция myFunction1()
запускается на выполнение правильно, но applyConfigs()
еще не (форма отправлена, но applyConfigs()
функция не выполняется). В любом случае сообщений об ошибках нет, только функции не выполняются.
Любая идея, что здесь происходит?
Моя функция applyConfigs()
довольно большой, но вот моя другая функция, которую я назвал myFunction1()
function showHideDiv(elementId,buttonId) {
if (document.getElementById) {
var element = document.getElementById(elementId);
var button = document.getElementById(buttonId);
if (element.style.display == 'none') {
element.style.display = 'block';
button.value = "Hide Options";
return false;
} else if (element.style.display == 'block') {
element.style.display = 'none';
button.value = "Show Options";
return false;
}
}
}
Первое, что я вижу, это то, что у вас есть двоеточие; после вызова функции. Попробуйте удалить их. –
И, возможно, дайте нам свой код JavaScript, это может быть очень полезно. – talnicolas
Точки с запятой действительны (вы можете иметь несколько операторов в четном обработчике) – colithium