在AJAX生成的模态之间传递动态信息

时间:2014-01-15 17:28:03

标签: javascript php html ajax

我在我的应用程序中使用了很多模态。很多时候我需要从一个"框中传递信息。到另一个。

示例:假设我有一张列出汽车制造商(奥迪,宝马,本田等)的表格。现在我想做到这一点,所以每一行都是可点击的。单击一行时,会弹出一个模态,其中包含他们生成的模型表(Honda Accord,Civic,CR-V等)。

最好如下解决:

<tr onclick="someAjaxFunction('manufacturerId')">
     <td>Audi</td>
</tr>
<tr onclick="someAjaxFunction('manufacturerId')">
     <td>BMW</td>
</tr>

现在要分层一层难度。假设在弹出的框中有一个按钮,上面写着&#34;添加模型&#34;。单击该按钮,现在该框将刷新,以显示您在新车型中键入的表单。单击“保存”,现在该框将刷新,以便现在显示该模型列表,并列出新项目。

现在假设我们只希望允许具有特定权限的用户添加新模型。现在,模态弹出窗口变得更加动态,因为它必须确定用户是否应该看到&#34;添加新的&#34;按钮与否。这是否意味着我们需要将用户的ID从一个框传递到下一个框并返回?

<tr onclick="someAjaxFunction('manufacturerId', 'userId')">
     <td>Audi</td>
</tr>
<tr onclick="someAjaxFunction('manufacturerId', 'userId')">
     <td>BMW</td>
</tr>

但是现在一个技术娴熟的人可以简单地改变onclick事件中的userId,并且能够做他们不应该做的事情。

问题:如何在不同的模态屏幕之间来回传递动态信息?您是否通过创建越来越多的JavaScript函数来执行与上述相同的操作,这些函数采用各种参数并将它们放入onclick事件中?

(请不要jquery。)

1 个答案:

答案 0 :(得分:0)

您需要跟踪访问者是否使用php会话变量登录,并根据该输出输出添加按钮。

例如:

if($_session('is_user'){
   echo 'this is a add car model button';
}
else{
   echo 'log in to add a car model';
}

您还可以将用户ID保存在会话变量中,这样您就不必在客户端和服务器之间来回传递它。