当我try it out(当然具有正确的地址)时,我有一种可以正常工作的表格。

当我在自己的网站中使用该功能时,它无法在fancybox中使用。什么也没发生(控制台中也没有错误)。

相关代码为:

<a class="fancybox" href="#inline1" id="link_consultar">
  Consultar
</a>
<div style="display: none">
  <div id="inline1">
    Producto: {$product->
    name|escape:'htmlall':'UTF-8'}
    <br>
    <br>
    <form id="myForm" action="http://danielvi.com/send_mail.php" method="post">
      Nombre:
      <input type="text" name="firstname">
      <br>
      <br>
      Consulta:
      <br>
      <textarea rows="4" cols="50">
      </textarea>
      <br>
      <br>
      <input type="submit" value="Enviar Consulta" />

    </form>
  </div>
</div>


JS:

$(document).ready(function() {
    $('#myForm').submit(function(){
        alert("submitted");
    });
});


我也尝试过:

$(document).ready(function() {
    $("#myForm").on("submit", function(event){
        alert("submitted");
    });
});


我已经包括了这样的表单插件:

<script src="http://malsup.github.com/jquery.form.js"></script>


没有成功,最终目标是通过AJAX发送表单,这是调试的简化示例。

我也不明白的是,即使删除所有js,也无法将我定向到操作页面。

您可以看到一个实时示例here(单击“ consulta”时)。

最佳答案

该问题显示在您的实时站点上。查看源代码后,您可以看到您正在其他表单中添加表单

<form id="buy_block"  action="http://danielvi.com/index.php?controller=cart" method="post">
    [...]
    <form id="myForm" action="http://danielvi.com/send_mail.php" method="post">
         [...]
    </form>
</form>


这会使您正在使用的第二个表单无效。这就是为什么它什么也不做。除此之外,该代码是有效的。

关于javascript - 表格在fancybox中不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13988015/

10-10 11:50