0

我正在尝试将模态ie(janrain给出的javascript函数)集成到已经存在的模态中。我的网站在 MVC 架构中运行。我的屏幕上有很多选项卡,我正在为tabs.htm文件中的所有选项卡编写所有 javascript 函数。

一旦点击了一个选项卡,它就会在 tabs.htm 文件中调用 javascript 函数,然后对特定的 html 文件进行 ajax 请求,然后在点击的选项卡中显示 html 的所有内容。

在选项卡中说我有一个按钮,在 onclick 事件中我调用 tabs.htm 文件中的 javascript 函数,然后从特定的选项卡 html 文件调用模态,然后在选项卡中显示模态。

现在我需要添加如下所示的 janrain 给出的模态,在下面的另一个模态下方。

(function() {
    if (typeof window.janrain !== 'object') window.janrain = {};
    if (typeof window.janrain.settings !== 'object') window.janrain.settings = {};

    janrain.settings.tokenUrl = 'MY_URL';

    function isReady() { janrain.ready = true; };
    if (document.addEventListener) {
      document.addEventListener("DOMContentLoaded", isReady, false);
    } else {
      window.attachEvent('onload', isReady);
    }

    var e = document.createElement('script');
    e.type = 'text/javascript';
    e.id = 'janrainAuthWidget';

    if (document.location.protocol === 'https:') {
      e.src = 'https://rpxnow.com/js/lib/oauth/engage.js';
    } else {
      e.src = 'http://widget-cdn.rpxnow.com/js/lib/oauth/engage.js';
    }

    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(e, s);
})();

这是我已经在 A 的 htm 文件中的按钮单击事件中调用的模式。

<div id="basic-modal-content">
<table width="100px" cellpadding="5" style="border-collapse:collapse;">
<tr>
<td width="140px">
Name     
</td>     
<input type="text" id="txtUserName" name="txtUserName" class="glow" style="width:150px;">
</td>
</tr>
<tr>
<td width="140px">
E-Mail ID
</td>
<td>
<input type="text" id="txtEmailQuest" name="txtEmailQuest" class="glow" style="width:150px;">
</td>
</tr>                 
</table>
<div style="text-align:center">
<input id="ask" type="image" src="/templates/default/images/askQuestion.jpg"  onClick="ValidateFormHere()"/>
</div> 

现在我想将 javascript 模式添加到这个表单中。如果我将 javascript 模态保存在 tabs.htm 文件中,当调用此模态时如何调用它。如果我将 javascript 文件粘贴到上面粘贴的模式中,则它不起作用。希望我的问题很清楚。

提前致谢。

4

1 回答 1

0

维涅什。你需要做两件事:

1 - 转到https://rpxnow.com/relying_parties/your_rp_here并转到部署 > 登录 Web。将您的小部件类型设置为嵌入式(非模态),然后点击保存并发布。

2 - 在您希望显示按钮的表单中,添加以下代码行:

<div id="janrainEngageEmbed"></div>

导致该选项卡加载的 JavaScript 有可能实际上不会加载小部件。如果发生这种情况,请在加载该选项卡的同一事件中调用 janrain.engage.signin.widget.init() 函数。它应该让小部件为您加载。

于 2013-03-29T00:28:55.467 回答