2009-12-22 4 views
-3

Я следующий код, написанный с помощью JQuery:Как заменить часть атрибута href ссылки на значение переменной?

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

Что приводит к следующему атрибуту:

<a href="javascript:location.href='http://site.com/notes/add?projects='+'strval'" 
    id="quicknote"> 

Но, что я хочу:

<a href="javascript:location.href='http://site.com/notes/add?projects='+'22'" 
    id="quicknote"> 

Все волшебники JQuery знаете, как я мог бы достичь этого результата?

ответ

6

Try:

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

Обратите внимание на положение и тип кавычек.

На стороне записки, я не совсем уверен, почему бы вам не сделать это вместо:

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

т.е. Theres нет необходимости для Javascript в вашем примере.

Наконец, поскольку вы используете jQuery в любом случае, я бы не поставил Javascript в href так же. Вместо того, чтобы добавить click() обработчик:

$("#quicknote").click(function() { 
    window.location = "http://site.com/notes/add?projects=22"; 
    return false; 
}); 
+1

хорошо сделано. Спасибо! – AnApprentice

-2

Мастер Jquery говорит вам, что это возможно, но это не имеет просто ничего общего с JQuery, и что ваш ответ:

У вас есть цитата неправильно !

И нет причин проголосовать за меня, потому что я ответил на первоначальный вопрос в очень, очень, очень профессиональном стиле.

Смежные вопросы