我正在尝试遍历几个iframe以获取iframe的src并从这些iframe的src中删除特定的查询字符串。这就是我到目前为止所做的:
$(document).ready(function() {
$('iframe').each(function() {
var $src = $(this).attr('src').substring(0, $(this).attr('src').indexOf('&id'));
alert($src);
});
});
iframe {
width: 300px height:300px;
background: #fafafa;
margin: 20px auto;
display: block;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<iframe src="mysite.com/program.asp?name=abc&status=3&id=2"></iframe>
<iframe src="mysite.com/program.asp?id=2"></iframe>
iframe的第一个网址正确显示,但第二个iframe的第二个网址没有显示。
预期产出:
first iframe - mysite.com/program.asp?name=abc&status=3
second iframe - mysite.com/program.asp?
答案 0 :(得分:0)
更新11/7/2017 1:12 PM
我能够回答我自己的问题并弄清楚,但感谢您的帮助和评论。这是我之前提到的预期输出。谢谢大家。
$(document).ready(function() {
$('iframe').each(function() {
if($(this).attr('src').indexOf('&id') > -1){
var $src = $(this).attr('src').substring(0, $(this).attr('src').indexOf('&id'));
}else{
var $src = $(this).attr('src').substring(0, $(this).attr('src').indexOf('id'));
}
alert($src);
});
});
$(document).ready(function() {
$('iframe').each(function() {
if($(this).attr('src').indexOf('&id') > -1){
var $src = $(this).attr('src').substring(0, $(this).attr('src').indexOf('&id'));
}else{
var $src = $(this).attr('src').substring(0, $(this).attr('src').indexOf('id'));
}
alert($src);
});
});
&#13;
iframe {
width: 300px height:300px;
background: #fafafa;
margin: 20px auto;
display: block;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<iframe src="mysite.com/program.asp?name=abc&status=3&id=2"></iframe>
<iframe src="mysite.com/program.asp?id=2"></iframe>
&#13;