我是JavaScript的新手。
我有一个javascript函数,它返回我的国家名称。现在我必须将此值放在iframe的src中。我的JavaScript函数如下:
<script type="text/javascript">
var country = $("#SCountry").val();
function getCountry()
{
var country = $("#SCountry").val();
return country;
}
</script>
我正在获取国家/地区值,但无法将其合并到iframe的src中。我的iframe src如下:
src='https://example.com/?country="javascript:getCountry()"'
它不起作用。
答案 0 :(得分:3)
这将设置iframe的源属性值
<script type="text/javascript">
var country = $("#SCountry").val();
document.getElementById("iframeid").setAttribute("src","https://domain.com/country="+country)
</script>
答案 1 :(得分:3)
您无法直接在iframe src属性中提供javascript代码。
相反,您可以使用下面的Javascript设置iframe的src
<iframe id="frame"></iframe>
<script>
window.onload = function() {
document.getElementById('frame').src = 'https://domain.com/?country=' + getCountry();
}
</script>
在上面的方法中,我们最初没有设置src属性,因为这个IE会出现安全警告。更好地遵循以下方法
<iframe src='/images/spacer.png' onload="this.src = 'https://domain.com/?country=' + getCountry();"></iframe>
<!-- /images/spacer.png meant to be any file. Lesser size is better -->
答案 2 :(得分:2)
您不能简单地将JavaScript放在HTML属性中。它不会被评估。相反,您必须使用JavaScript来操纵DOM元素,即更改其src
属性。
<iframe id="myIframe" src=""></iframe>
<script>
document.getElementById('myIframe').src =
'https://domain.com/?country=' + getCountry();
</script>
答案 3 :(得分:1)
$(function(jQuery){
var aURL = $('#myIframe').attr( "src");
$('#myIframe').attr( "src",aURL+''+"Isreal"/*use getCountry() here*/);
});
可以查看此fiddle
答案 4 :(得分:0)
您可以像这样访问iFrame的“内容”(只需确保为iFrame提供ID)这是一个纯粹的JS解决方案:
document.getElementById("iframe_id").contentDocument.getElementById("destination_id").innerHTML = country ;
您的iFrame标签可能如下所示:
<iframe src='https://domain.com/' id="iframe_id">``</iframe>
或强>
用php:
JS:
`document.getElementById('iframe_id').src = 'https://domain.com/?country=' + country;`
iframe中的PHP:
$country = $_POST["country"];
echo $country; // this echo you can use where you want the result to show up.