【问题标题】:Jquery UI modal dialog using MVC structure使用 MVC 结构的 Jquery UI 模态对话框
【发布时间】:2012-06-18 09:15:45
【问题描述】:

我正在使用 Zend 框架创建一个带有提交按钮的 Jquery UI 对话框,用于向 MYSQL 数据库添加内容。我的代码在使用普通 URL (/index) 时有效,但在自定义路由页面 (/addpost/new) 上时,它似乎不起作用。有谁知道问题出在哪里?

查询对话框

<script>


$(function() {

$( "#dialog-form" ).dialog({
        autoOpen: false,
        height: 300,
        width: 350,
        modal: true
    });

    $( "#create-user" )
        .button()
        .click(function() {
            $( "#dialog-form" ).dialog( "open" );
        });
});
</script>

按钮

<button id="create-user">Create new user</button>

表格

<div id="dialog-form" title="Create new user">
<form id="form-id">
<fieldset>
<input type="text" name="text" id="text" value="" class="text ui-widget- content ui-corner-all" />
<input type="submit" value="Add to Database">
</fieldset>
</form>
</div>

JQUERY 提交

<script type="text/javascript">
$('#form-id').submit(function() {
$.ajax(
{
    type: 'POST',
    url: '/addtodatabase',
    data: $(this).serializeArray(),
    success: function(data, textStatus, jqXHR)
    {

    },
    error: function(jqXHR, textStatus, errorThrown)
    {
      //code
      }
      });
      });
      </script>

【问题讨论】:

  • 您遇到的具体问题是什么?
  • 数据未与数据库连接。 url (/addtodatabase) 连接到数据库并将信息插入 Mysql 数据库。它适用于普通 URL 路由 (/index),但不适用于自定义路由。
  • 所以你说的这个自定义 URL,它是你目录中的实际文件吗?如果它不是您服务器上的真实文件,它显然不会工作。
  • 这是一个真实的文件。不完全确定这是否是自定义路由问题,但可以使用 (example.com/index) 但不能使用 (example.com/addinfo/username) - jquery 根据打开的对话框工作,但出于某种原因提交后它没有将其定向到 URL ..

标签: jquery zend-framework jquery-ui-dialog


【解决方案1】:

如果您可以将其保存在索引页面上,您的代码就可以了。

在 firebug 中检查 ajax 请求并查看请求被发送到哪里。最有可能是上下文问题。通过直接调用它来绕过这个测试:

$.ajax({url: "/addpost/new"}, {})

更改上面的 url 参数,直到你到达你的端点。那应该对它进行排序。

:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多