Popmodal函数传递多个ID

时间:2014-11-21 17:53:50

标签: jquery function modal-dialog

以下代码效果很好。但它只调用modal1来调用popModal()。 如何更改下面的代码,其中id ==' modal1'可以是' modal2',' modal3'或' modal4'。如果我更改了id值,它可以工作,但我不希望它是静态的 - 它可以是任何id值。思考? 感谢您的帮助。

var id= getUrlParameter('id');

if (id == 'modal1') {
     popModal();
}

function popModal()
{
    $('#modal1').modal('show');
}


function getUrlParameter(sParam)
{

    var sPageURL = window.location.search.substring(1);    

    // var to open modal: url http://example.com?id=modal1



    var sURLVariables = sPageURL.split('&');
    for (var i = 0; i < sURLVariables.length; i++) 
    {
        var sParameterName = sURLVariables[i].split('=');
        if (sParameterName[0] == sParam) 
        {
            return sParameterName[1];
        }
    }
}

以下是我打电话看到弹出窗口的js:

$(document).ready(function()
{ var id= getUrlParameter('id'); 
if (id == 'modal1') { popModal(); } })

我尝试了以下操作,但它弹出相同的模态(modal1):

if (id == 'modal1' || id == 'modal2') { popModal();} function popModal() { $('#modal1' || '#modal2').modal('show'); }

还添加了以下内容:

$(document).ready(function() { var id= getUrlParameter('id'); if (id == 'modal1' || id == 'modal2'){ popModal(); } })

似乎无法让它发挥作用 - 感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

//### 1
if (id == 'modal1' || id == 'modal2' || id == 'modal3') {
     popModal(id);
}

//### 2
function popModal(id)
{
    $('#'+id).modal('show'); //### 3
}

TEST

  1. 首先检查id是否合适
  2. 然后调用该函数以显示具有适当id的模态窗口
  3. 要显示相应的模态,id字符串必须以#
  4. 开头