2013-05-20 26 views
0

我有一個表單標籤內輸入的字段列表使用Javascript - 設置當點擊

<div class="angefragte_stunden_<%= hour.id%>"> 
<%= h.text_field :angefragte_stunden %> 

碼輸出=>

<div class="angefragte_stunden_458"> 
<input id="booking_user_458_angefragte_stunden" name="booking_user[458][angefragte_stunden]" size="30" type="text" value="32" /> 

...

我想輸入字段爲0用戶可以點擊某個輸入字段並將js替換爲(例如32)的值爲0.

嘗試:

$(document).ready -> 
    $(".angefragte_stunden").on "click", -> 
    $(this).val(0) 

沒有成功,我一個不是很有經驗的js /咖啡。所以幫助會很好。謝謝

Thansk到目前爲止.. 現在看起來不同的問題.. 當我提交表單時,新值0不會保存,而是舊值。如果我用手輸入,然後存儲0 ..任何想法?

最終結果:

<%= form_for @hour_user, :url => ..._path, :remote => true, :method => :put do %> 
<div class="angefragte_stunden"> 
<%= h.text_field :angefragte_stunden, :class => "submittable" %> 

咖啡:

$ -> 
$(".submittable").on 'change', -> 
    $(this).parents("form:first").submit() 
    $(this).effect "highlight", {}, 1500 

$ -> 
$(".angefragte_stunden > input").click -> 
    $(this).val(0) 
    $(this).parents("form:first").submit() 
    $(this).effect "highlight", {}, 1500 

回答

-1

你嘗試輸入標籤內類似的onClick = 「THIS.VALUE = 0」?

0

你必須與類的angefragte_stunden

你需要給它的普通類,如果你想使用該選擇任何元素。

變化

<div class="angefragte_stunden_<%= hour.id%>"> 

<div class="angefragte_stunden angefragte_stunden_<%= hour.id%>"> 

,或者使用與選擇^=一個開始,但如果你開始廣告其它類是棘手的。

+0

我愛的奧祕downvotes一個正確的答案。 – epascarello

+0

是的,不知道,這是一個很好的觀點。我只注意到咖啡問題,完全錯過了課堂問題。 Upvoted,並更新我的答案與信貸給你。 –

+0

Thansk到目前爲止..它現在出現了一個不同的問題。當我提交表單時,新值0不會保存,而是舊值。如果我用手輸入,然後存儲0 ..任何想法? – Werner

2

你需要縮進你的咖啡標記調用。 Coffeescript的塊語法由縮進控制。

$(document).ready -> 
$(".angefragte_stunden").on "click", -> 
$(this).val(0) 

相當於js的

$(document).ready(function(){}) 
$(".angefragte_stunden").on("click", function(){}) 
$(this).val(0); 

你想

$(document).ready -> 
    $(".angefragte_stunden").on "click", -> 
    $(this).val(0) 

這JS是

$(document).ready(function(){ 
    $(".angefragte_stunden").on("click", function(){ 
    $(this).val(0); 
    }); 
}); 

爲epascarello所指出的,你還需要修復您的類。如果你想申請多個班級,請在它們之間放置一個空格。 $(".angefragte_stunden")將匹配的元素與angefragte_stunden類,但不angefragte_stunden_458

+0

到目前爲止感謝..它現在出現了一個不同的問題..當我提交表單新值0不會保存,但舊值。如果我用手輸入,然後存儲0 ..任何想法? – Werner

+0

提交重新加載頁面。如果您希望在頁面重新加載時保留它,或者使用ajax調用進行提交,則需要在開始時設置它。這超出了我在評論中可以真正描述的範圍,但谷歌「ajax表單」,你應該能夠找到大量的信息。 –

+0

嗨本感謝..我可以看到這一點...什麼是你的意思是「開始」 – Werner

0
$(document).ready(function(){ 
    $('#booking_user_458_angefragte_stunden').click(function() { 
     $(this).val(0); 
    }); 
}); 
+0

他使用coffeescript,而不是javascript。 –