【问题标题】:Pass data from one action to another in yii2在 yii2 中将数据从一个动作传递到另一个动作
【发布时间】:2016-02-02 21:44:46
【问题描述】:

我正在尝试为我的 Yii2 网站实现购物车。根据用户放入购物车的产品数量,有 N 种计算形式。

<form class="calculator" id="calc1">
    <div id="calc_left_half">
            <br>
            <input type="number" step="0.01" class="calculation_input" id="regular_input_1" name="regular_input" value="0" onkeyup="order()" onchange="order()"> Put A value
            <br>
            <input type="number" step="0.01" class="calculation_input" id="angular_input_1" name="angular_input" value="0" onkeyup="order()" onchange="order()"> Put B value
            <br>
    </div>
    <div id="calc_right_half">
        <span class="order"> SUM: <span class="color_result result" id="result_color_1">0</span> $<br>
    </div>
</form>

<form class="calculator" id="calc2">
    <div id="calc_left_half">
            <br>
            <input type="number" step="0.01" class="calculation_input" id="regular_input_1" name="regular_input" value="0" onkeyup="order()" onchange="order()"> Put A value
            <br>
            <input type="number" step="0.01" class="calculation_input" id="angular_input_1" name="angular_input" value="0" onkeyup="order()" onchange="order()"> Put B value
            <br>
    </div>
    <div id="calc_right_half">
        <span class="output"> SUM: <span class="color_result result" id="result_color_1">0</span><br>
    </div>
</form>

<a id="order" class="btn btn-success btn-send cart-button" href="index.php?r=site/create-pdf?>"><b>ORDER</b></a>

函数 order() 进行一些计算并将“输出”跨度 innerHtml 分配给结果。我 我的问题是如何将输入值和“输出”innerHtml 值传递给操作(site/create-pdf)。我想使用具有此值的 mpdf 扩展创建一个 pdf。

新手问题:为此目的使用 json 或 xml 是个好主意。

谢谢大家

【问题讨论】:

  • 在 order 函数中填充了隐藏输入?
  • 你能告诉我更多细节吗?
  • 创建一个表单(为什么有几个?),添加一个输入(隐藏类型),将 JS 添加到您的 order() 函数并更新隐藏输入的值。有了这个,一个常规的表单就被提交了。你熟悉HTML/JS/PHP,你有哪些知识?我的建议非常基本,所以我想您的问题中有一些我不明白的地方。那么为什么你有几种形式?顺便说一句:您的 id 属性不是唯一的。
  • 我有多个表单来为我的输入设置一个非唯一的 id(这是计算脚本所必需的)。关于我的知识,我缺少请求知识。可能我会使用 POST 请求,但还不知道如何实现它们
  • 我不明白。一个带有隐藏字段的简单表单应该可以做到,IMO。而且我看不出您拥有非唯一 ID 的原因 - 这是无效的 html。我还注意到一些跨度标签没有关闭。

标签: php json post yii2


【解决方案1】:
  1. 您可以使用 GET 请求。将参数传递给 url 并使用它 其他操作中的参数。
  2. 或者你可以使用
$this->view->params['customParam'] = 'customValue'

Yii2 全局变量在其他动作中。

【讨论】:

  • 在这种情况下,我需要一个额外的 js 脚本,每次用户更改输入值时都会更改 url,对吧?还有一件事:我想使用 POST 来避免网址过长。
猜你喜欢
  • 1970-01-01
  • 2015-09-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-02
相关资源
最近更新 更多