2011-06-07 27 views
0

我正在使用Ruby on Rails 3,我想從表單文本字段中檢索值並將該值設置爲另一種表單文本現場使用RJS爲以下(或更好的辦法!):從表單文本字段中檢索值並使用RJS在另一個表單文本字段中設置該值

update_page_tag do |page| 
    page.event.observe('text_field1_css_id', 'keyup') do |element| 
    element << ... # Get and set a '@variable' value using the value in the 
        # HTML textarea tag with id = 'text_field1_css_id'. The 
        # '@variable' value should be accessible from the 
        # 'element.replace_html' method stated below 
    element << ... 
    ... 
    element.replace_html (:text_field2_css_id), @variable.inspect 
    end 
end 

我怎樣才能做到這一點使用原型框架?

+1

是不是你推RJS太遠?這將是如此簡單和清晰的純Javascript ... – tokland 2011-06-07 14:54:47

+0

@tokland - 我怎樣才能做到這一點使用'元素<<'聲明? – user502052 2011-06-07 14:55:51

+0

我不知道,我剛剛停止寫RJS。不是我想說服你,但我通常所做的是響應AJAX請求,而不是使用Javascript,而是使用JSON數據(或HTML,如果我只需填充視圖),然後JS代碼(已經在客戶端中)使用它。這確保了客戶端和服務器代碼之間的隔離對不起,我不能幫你解決你的問題。無論如何,你爲什麼要在那裏設置觀察點,而不是頁面加載? – tokland 2011-06-07 15:02:55

回答

2

在原型:

// /public/application.js 
$('text_field_1_css_id').observe('keyup',function(event){ 
    $('text_field2_css_id').setValue($F(event.element)); 
}); 

對於其他人誰可能會感興趣,如果你使用jQuery,你也許可以使用:

// /public/application.js 
$('#text_field_1_css_id').keyup(function(){ 
    $('#text_field2_css_id').value($(this).value()); 
}); 
+0

我不使用jQuery,但原型...我更新了問題。 – user502052 2011-06-07 18:02:54

相關問題