我正在尝试在Javascript中向<button>
标记之外的按钮添加onclick函数。以下是我目前所拥有的内容,但点击时该按钮不会链接到该uri。我该怎么做?非常感谢您的帮助!我也在代码中评论过。
对于我有的按钮:
"<td><button"+" id="+foodList[i].Id +" onClick="+"\"doSomething(this.id)\""+" >"+"Get"+"</button></td></tr>"
所以基本上我分配了&#34; Get&#34;按下for循环中的id。
function doSomething(id) { //the button's id
var item = document.getElementById("type").value; //get some value from elsewhere in the page
if (item == "food") {
var uri = "baseuri" + id;
document.getElementById(id).onclick = "location.href='" + uri + "';"//add an onclick to the button so that it will takes the user to that uri
} else {
var uri = "another baseuri" + id;
document.getElementById(id).onclick = "location.href='" + uri + "';"
}
答案 0 :(得分:4)
改变这个:
document.getElementById(id).onclick="location.href='"+uri+"';"
这样的事情:
document.getElementById(id).onclick= function(){
location.href = "Wanted url here"; // location.href = location.href + "/currentpath/additional/params/here"
}
这样,当你点击按钮时,你已经附加了一个功能,它改变了网址(重定向页面)
答案 1 :(得分:1)
你必须这样写:
document.getElementById(id).onclick = function() {
location.href = uri;
}