我正在运行一个旧的Rails 2.3应用程序,我在使用AJAX加载的模式中的表单上运行live_validations时遇到了麻烦。
这是我在模态中加载AJAX的页面:
<div class="central_content">
<%= t("flags_.form_title") %>
<% form_for (@flag, :remote => true, :live_validations => true) do |f| %>
<%= hidden_field_tag (:post_id, @flag.post_id) %>
<%= f.text_area :explanation, :placeholder => t("flags_.explanation") %>
<%= f.submit t("messages_.send"), :class => "nice_small_butt red" %>
<% end %>
</div>
当模态打开时,我得到:
TypeError: $(...).validate is not a function
这是Rails编写的代码
<div class="central_content">
<h1>Motiva la tua segnalazione </h1>
<form action="/flags" class="new_flag" id="new_flag" method="post"><div style="margin:0;padding:0;display:inline"><input name="authenticity_token" type="hidden" value="y5qw6kodM4/rzcYDf1xtx364uzN3izjm+ZsTpfbUmHA=" /></div>
<input id="post_id" name="post_id" type="hidden" value="31252" />
<textarea cols="40" id="flag_explanation" name="flag[explanation]" placeholder="Indica qui i motivi della tua segnalazione (es: "La documentazione è insufficiente, tanto che...", "Il testo dell'istruzione non è stato rispettato infatti...", ecc..). La tua motivazione comparirà all'interno di una mail più ampia che i Comunity Ninja di Upload riceveranno, quindi cerca di essere il più specifico e dettagliato possibile nello spiegare cosa rende l'esecuzione non valida e cosa secondo te dovrebbe essere fatto per rimediare." rows="20"></textarea>
<input class="nice_small_butt red" id="flag_submit" name="commit" type="submit" value="Invia" />
</form><script type="text/javascript">
$('#new_flag').validate({"messages":{},"ignore":".ignore","rules":{"flag[explanation]":{"minlength":80}}})
</script>
</div>
在AJAX调用之后,Rails for live_validation生成的Jquery代码似乎无法正常工作。我怎样才能解决这个问题?
我正在使用在jQuery Validation插件之前加载的Jquery 1.7.1 - v1.11.1
答案 0 :(得分:0)
刚刚发现该插件没有正确加载。 我试图使用javascript_include_tag加载Jquery验证插件。
切换到显式,现在一切正常。