通过Zend Framework中的链接发送帖子数据的最简单示例

时间:2012-03-13 01:01:29

标签: zend-framework

从Zend开始,我想知道将POST数据发送到另一个页面的最简单方法是什么,而不是通过表单,而是通过我视图中的某些链接。谢谢:))

2 个答案:

答案 0 :(得分:0)

您无法通过链接发送POST数据。至少不通过正常链接。链接只能携带GET数据。

如果您需要通过链接发送POST,那肯定是一个设计缺陷。

如果您100%确定,那么您需要它,您可以执行using jQuery和onclick事件。没有javascript就不可能做到这一点。其他选项是使用带有隐藏字段的表单发送它,其中单个提交按钮可见 - 这甚至可以在没有javascript的情况下工作。

答案 1 :(得分:0)

HTML中的普通超链接与GET请求一起发送,不应该更改正在访问的资源的状态。这被称为idempotent。您可以反复重复该请求,并且每个后续请求对同一URL的结果与第一个相同。

POST请求没有此限制,适用于用户需要更改的内容(例如创建新资源)。

无法通过普通的HTML链接发送POST请求。即使你找到了一种方法,它也打破了网络用户几乎普遍的期望。你想达到什么目的?也许有更好的方法。

但是要回答你的问题,你可以使用像jQuery这样的东西捕获“点击”事件并让它做一个POST请求:

$('.my-link').click(function() {
    var url = $(this).attr('href');
    var data = {};
    $.post(url, data, function() {
        window.alert('success!');
    });
    return false;
});

如果您的网址有任何查询参数,即“?foo = bar& baz = bum”,那么您可能需要将其从网址中删除,并将其作为第二个参数传递给$.post() function 。这留给读者练习。 ; - )