2011-09-06 49 views
1

我:修改url_for,A HREF爲symfony1.2與jQuery

<span id="test"><a href="<?php echo url_for('mymodule/myaction?id='. $id) ?>">link1</a></span> <br /> 

<span id="test"><a href="<?php echo url_for('mymodule/myaction?id=') ?>" $id>link2</a></span> 

我必須產生與url_for網址。我想修改的javascript(jQuery的)的$ id如果我點擊:

<span class="click" id=1>click one</span> <br /> 
<span class="click" id=2>click two</span> <br /> 
<span class="click" id=3>click three</span> <br /> 

如果我點擊 「點擊ONE」 在我想鏈接:

<span id="test"><a href="<?php echo url_for('mymodule/myaction?id=1') ?>">link1</a></span> 

OR

<span id="test"><a href="<?php echo url_for('mymodule/myaction?id=') ?>"1>link2</a></span> 

LIVE:http://jsfiddle.net/wtAbp/

回答

1

你可以把每一個URL在裁判ATT ribute每個跨度,就像這樣:

<span class="click" id=1 rel="<?php echo url_for('mymodule/myaction?id=1') ?>">click one</span> 
<span class="click" id=2 rel="<?php echo url_for('mymodule/myaction?id=2') ?>">click two</span> 
<span class="click" id=3 rel="<?php echo url_for('mymodule/myaction?id=3') ?>">click three</span> 

然後在點擊事件(或任何你選擇的方式),替換目標與點擊的元素的相對值的href。

$('.click').unbind('click').click(function() { 
    $('a#your_id').attr('href', $(this).attr('rel')); 
}); 
+0

我怎樣才能使這個? http://jsfiddle.net/wtAbp/5/ –

+0

我已更新您的代碼段 – Burgi

1

您的代碼<?php echo url_for('mymodule/myaction?id=1') ?>在服務器端解釋。所以你不能在客戶端修改它。

只要把"<?php echo url_for('mymodule/myaction?id=') ?>"在href,沒有ID,並添加dynamicaly的ID:

喜歡的東西:

$(".click").live('click', function() {  
    $("a").attr('href',$("a").attr('href')+$(this).attr('id')); 
});