2013-04-07 60 views
5

我有一個綁定到模型的一種形式:用戶的形式,這是由表示Backbone.View.extend具有:骨幹HTML選擇值

model:user 

視圖內:

events: { 
    'click #payment' : 'updatePayment' 
} 

付款是一個HTML選擇與:

<div class="span2" id="payment"> 
    <select class="span12"> 
     <option value="paypal">paypal</option> 
     <option value="check">check</option> 
    </select> 
</div> 

updatePayment: function() { 
    var payment = this.$("#payment"); 
    console.log(payment); 
} 

可悲的付款沒有價值。 有人可以幫忙嗎? 謝謝!

+2

哪個DOM元素您的看法使用? – 2013-04-07 21:04:07

+0

爲什麼使用'this。$()'而不是'$()'? – mhu 2013-04-07 21:18:57

+0

@mhu:我會使用'this。$()'而不是'$()'來調用Backbone的標準做法,只使用'$()'是一個紅旗。 – 2013-04-07 21:26:54

回答

7

這是一個有點難以啓齒......但它似乎像你想的:

events: { 
    'change .span12' : 'updatePayment' // listen for change of <select> element. 
}, 

updatePayment: function(event) { 
    var payment = event.target.value; 
    console.log(payment); // print 'paypal' or 'check'. 
}