实际上我想将url和id从一个fn带到另一个fn,无论这种方法是否有效。
function addElement(url, id) {
alert(url);
var main = document.getElementById('mainwidget');
main.innerHTML = "<iframe src=" + url + " align='left' height='1060px' width='576px' scrolling='no' frameborder='0' id='lodex'></iframe>";
alert("google");
addUrl(url, id);
}
function add() {
addUrl(url, id)
alert("id" + id);
document.getElementById("Listsample").innerHTML = "<a href='#' onclick='addUrl(" + url + ");' id='cricket' tabindex='1' name='cricket'>" + id + "</a>";
}
答案 0 :(得分:1)
您需要以某种方式共享信息,因为 variables
仅在其功能的 scope
中可用。最简单的方法是定义全局变量。
var url, id; // global
function addElement(_url, _id) {
url = _url;
id = _id;
alert(url);
var main = document.getElementById('mainwidget');
main.innerHTML = "<iframe>...</iframe>";
alert("google");
addUrl(url, id);
},
function add() {
addUrl(url, id)
alert("id" + id);
document.getElementById("Listsample").innerHTML = "<a>...</a>";
}
请注意,它们不需要是全局的。您可以将此模块包装到自己的 scope
(function() {
/// code goes here
})();
或者您也可以将整个代码整理到一个对象中( encapsulation
)。
var addy = {
url: null,
id: null,
addElement: function(url, id) {
this.url = url;
this.id = id;
alert(url);
var main = document.getElementById('mainwidget');
main.innerHTML = "<iframe>...</iframe>";
alert("google");
addUrl(url, id);
},
add: function() {
addUrl(this.url, this.id);
alert("id" + this.id);
document.getElementById("Listsample").innerHTML = "<a>...</a>";
}
};