如何用变量值替换链接的href属性的一部分?

AnA*_*ice -2 javascript jquery dom

我有以下代码,使用jQuery编写:

var strval = '22'
$("#quicknote").attr("href", 
  "javascript:location.href=/'http://site.com/notes/add?projects=/'+ strval")
Run Code Online (Sandbox Code Playgroud)

这导致以下属性:

<a href="javascript:location.href='http://site.com/notes/add?projects='+'strval'"
   id="quicknote">
Run Code Online (Sandbox Code Playgroud)

但是,我想要的是:

<a href="javascript:location.href='http://site.com/notes/add?projects='+'22'"
   id="quicknote">
Run Code Online (Sandbox Code Playgroud)

任何jQuery向导都知道如何实现这个结果?

cle*_*tus 7

尝试:

var strval = "22";
$("#quicknote").attr("href",
 "javascript:location.href='http://site.com/notes/add?projects=" + strval + "'");
Run Code Online (Sandbox Code Playgroud)

请注意报价的位置和类型.

另外,我不确定你为什么不这样做:

var strval = "22";
$("#quicknote").attr("href",
  "http://site.com/notes/add?projects=" + strval + "'");
Run Code Online (Sandbox Code Playgroud)

即你的例子中不需要Javascript.

最后,既然你正在使用jQuery,我也不会像这样把Javascript放在href中.而是添加click()处理程序:

$("#quicknote").click(function() {
  window.location = "http://site.com/notes/add?projects=22";
  return false;
});
Run Code Online (Sandbox Code Playgroud)