0

我在 SO 上看到了其他 javascript 切换问题

但我无法将其添加到我的方法中。我无法将头绕在应该将其放入以使其工作的地方。

这是有问题的 JavaScript 函数:

function injectProductIFrame(w,h){
        var job_id = $("#job_id").val();
        if(job_id != "0")
        {
            var url = "/technician/"+ job_id+"/addProducts";
            $("#iframeContainer").html('<iframe src="'+url+'" width='+w+' height='+h+' />');
        }else{
            alert("Please Select a Job First. Then you can add a product");
        }
    }

这是视图部分:

</a><a href="#productaddAdd" role="" class="" data-toggle="modal">
                              <button class="btn btn-large" id="product_frame" type="button" onClick='Javascript: injectProductIFrame("90%", "500")'> Product </button>

这没有什么问题,除了如果 iFrame 正在显示内容,我希望按钮关闭 iFrame。该按钮现在只是起到“打开”的作用,再次单击它不会改变任何事情。

任何帮助将不胜感激。

4

1 回答 1

2

我认为这个或类似的东西会起作用

    function injectProductIFrame(w,h){
    if($("#iframeContainer").html().length > 0)
    {
       $("#iframeContainer").hide();           
    }
    else
    {
       $("#iframeContainer").show();

       var job_id = $("#job_id").val();
       if(job_id != "0")
       {
           var url = "/technician/"+ job_id+"/addProducts";
           $("#iframeContainer").html('<iframe src="'+url+'" width='+w+' height='+h+' />');
       }else{
           alert("Please Select a Job First. Then you can add a product");
       }   
    }
}
于 2013-06-06T02:44:34.570 回答