2011-11-06 34 views
0

我用這個代碼塊生成一個表現公式兩個領域:紅寶石form_for.text_field和JavaScript

<%= form_for @micropost do |f| %> 
    <%= f.text_area :content, :onKeyUp => "countCharactersLeft(document.forms[0].elements[2],document.forms[0].elements[3],140)" %><br /> 
    <input readonly type="text" name="charsLeft" size="3" maxlength="3" value="140"> 
<% end %> 

我想算在第一textarea的字符數。我爲此使用JavaScript函數。
爲了獲得功能工作,我通過fieldToCount和場到與document.forms顯示結果[0] .elements [2]硬編碼。
但我想要的是動態獲取它。有沒有辦法讓f.text_area中的id傳遞給javascript調用的代?

回答

0

爲了找到一個HTML元素的ID,只看生成的源代碼。在你的情況下,它可能是#content#micorpost_content。它應該可以在你想使用的ID的text_area輔助方法的參數選項哈希來指定。事情是這樣的:

<%= f.text_area :content, :id => "my_special_id", :onKeyUp => "countCharactersLeft($('#my_special_id',$('#charsLeft'),140)" %>