2011-06-13 40 views
1

通常,我有這樣的形式來更新照片:如何創建更新模型屬性的按鈕?

<% form_for(@proto, :url=>{:controller=>"protos", :action=>"update"}, :html => { :multipart => true }) do |f| %> 
    <p> 
     <%= f.text_field :image_data %> 
     <%= submit_tag "Save Proto" %> 
    </p> 
<% end %> 

它要求用戶把在圖像數據的base64字符串,併爲原模型更新圖像。

我的圖像顯示在我的網站上。

而不是用戶複製,然後粘貼base64字符串;我只想要一個使用該圖像源的按鈕(按鈕將在圖像下),以更新@ proto的圖像。

任何人都可以指點我嗎? 謝謝。


+1

現在你的問題很混亂,因爲你已經做了很多,然後提出了不同的問題等等:讀者必須遵循複雜的敘述,這很難。如果您將其更改爲僅僅是一個簡單的問題,那麼您就可以更輕鬆地回答。 – 2011-06-21 11:56:00

回答

0

我已經解決了這個問題。

我回收了這個表格,並且自動填充了圖片源文本字段。

具有javasript取得它做的事:

document.getElementById("proto_image_data").value = 
document.getElementById("thecanvas").src; 

proto_image_data是文本字段,它要求的ID:IMAGE_DATA,如。

thecanvas是我在頁面上的圖像的IMG ID。

這是一個JavaScript函數,它在同一頁/ div上顯示圖像和表單。乾杯。

不幸的是,圖像下方仍然有一個文本字段(現在圖像源已準備好更新)。但是,這至少實現了不讓用戶手動複製+粘貼圖像源的主要目標。

如果有更好的方法來做到這一點,請讓我知道。謝謝。


此外,我已將文本字段替換爲隱藏字段,並且腳本的工作方式相同。該表單現在不可見,但提交按鈕。