将参数传递给iframe src

时间:2018-04-06 21:55:54

标签: javascript jquery html iframe

我的网页包含使用iframe的嵌入页面。我已解析URL以将参数附加到主URL以创建新链接,但现在我需要将路径传递给iframe src以在单击链接时加载页面。

iframe代码

<iframe name= "myiframe" id = "load" src="https://www.site-name.com/Manual/application.htm">

解析url的jQuery代码

  $(document).ready(function () {
var URL = 'https://www.site-name.com/f1'; // MAIN 

var otherURL = 'https://www.site-name.com/Manual/module_1_4_2.htm'; // iframe URL

//Create a new link with the url as its href:
var a = $('<a>', {
    href: otherURL
});
var sResult = '<b>Protocol:</b> ' + a.prop('protocol') + '<br/>'  + '<b>Host name: </b>' + a.prop('hostname') + '<br/>' + '<b>Path: </b>' + a.prop('pathname') + '<br/>' 

var path = a.prop('pathname');   // pass the path to the MAIN URL 
var newURL = URL + "?page="+ path.substring(path.lastIndexOf('/') + 1);

// display new URL 
$('span').html(sResult + "<br><b>New URL: </b>" + newURL);  

// Correctly displays
// New URL:https://www.site-name.com/f1? page=module_1_4_2.htm 

新网址现在为https://www.site-name.com/f1?page=module_1_5_3.htm

这有效,但现在我需要将查询路径传递给iframe src以在单击链接时加载页面。

我要做的是将路径传递给iframe src。 如何将路径变量传递给iframe src。

1 个答案:

答案 0 :(得分:1)

使用jQuerys函数load()更改iframe的src属性。

&#13;
&#13;
var url = $("#load").attr ('src');

var a = $('#link');
var path = a.prop ('pathname');
var redirectUrl = url + "?page="+ path.substring (path.lastIndexOf ('/') + 1);

$('#load').load (redirectUrl);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<iframe name="myiframe" id="load" src="https://www.site-name.com/f1"></iframe>
<br/>
<a id="link" href="https://www.site-name.com/f1?page=module_1_5_3.htm" target="myiframe">TEST LINK</a>
&#13;
&#13;
&#13;