我在部分代码中有以下代码:
<%= image_tag(url_for(:controller => "campaigns", :action=>'coupon_preview_text',
:id => campaign_id, :width=>width), {
:title=>@campaign_name,
:onclick=>"showBigCouponPreview(" + campaign_id.to_s + ")",
:alt => @campaign_name }) %>当我有一个常规的rails操作显示它时,它是100%正常的,例如,我得到
<img title="Click for Largest image"
src="/campaigns/coupon_preview_text/1075?width=120"
onclick="showBigCouponPreview(1075)"
alt="Click for Largest image">但是,当我通过ajax调用(对于相同的记录)使用相同的部分(其中包含image_tag)时,使用rjs来page.replace_html我得到的部分
<img title="Click for Largest image"
src="/campaigns/coupon_preview_text/1075?width=120"
onclick="showBigCouponPreview(#<Campaign:0x7fe795a32210>)"
alt="Click for Largest image">,即记录id - 1075 -在src属性中显示ok,但在onlick操作?中没有显示,原因是我不知道ajax调用何时使用rjs替换该部分--对于相同的记录,它的行为似乎有所不同。
显然,在获取和显示记录ID方面存在一些问题,而不是针对on部分的内部对象ID。
发布于 2012-01-06 20:13:56
在ajax调用中设置campaign_id的地方,必须将其设置为实际的Campaign对象,而不是对象的ID。
https://stackoverflow.com/questions/8763842
复制相似问题