2013-10-23 2 views
0

나는 학교를위한 작은 웹 사이트를 만들고 있는데, 이미지 기반 갤러리에서 투표하고 의견을 말할 수 있습니다. 현재 모두 한 페이지에 있으며 모두 등급 형식입니다. 여기가 사용자가 입력하도록되어Backbone.js, 업데이트 등급

http://i.imgur.com/M4ZOtUG.png

지금 보이는 방법 (나는 솔직히 방법을 모른다)

그래서 순간에 기본 점수 노력하고 있습니다,하지만 난 그것을 업데이트하지 못할 등급을 적용한 다음 등급의 새로운 가치를 보여 주어야합니다.

나는 처음 이미지를 평가할 때부터 꽤 가까웠다. 3;

"C1, 3"

(내 콘솔에서) 내가 4 이미지 5 평가 때, 내가 얻을 : 내가 얻을

"C4를, 5"

이제 기본 등급을 어떻게 업데이트합니까? 컬렉션의 이미지

예제 코드 (기본 등급은 내 컬렉션에 설정)

다음
{image: "images/gifs/water.gif", rating: 5, comments: "Love the detail in this one!", title:"Water", category:"Nature"} 

내 관점에서의 방법은 다음과 같습니다 (

gifs_html += '<td>' + "<span class=\"stars\">" + gifs[gif].get("rating") + ".0</span>" + "\n" + "<form data-id=\"" + gifs[gif].cid + "\"><input type=\"text\" name=\"amount\" size=\"5\" value=\"\"/>" + "\n" + "<input type=\"submit\" value=\"Rate\">" + "<input type =\"hidden\" name=\"cid\" value=\"" + gifs[gif].cid + "\"> </form>" + '</td>'; 

가 그럼 난이 JQuery와 기능을주는거야 별 이미지를 업데이트하는 방법)

$('span.stars').stars(); 

이 이벤트

   events:{ 
       'submit form':function(ev){ 
        var $form = $(ev.currentTarget); 

        var id = $form.data("id"); 
        var rating = $("input[name=amount]", $form).val(); 
        console.log(id + ", " + rating); 
        return false; 
       } 

도움을 주시면 대단히 감사하겠습니다. 감사.

+0

기본 등급은 무엇을 의미합니까? 모든 등급을 투표 수로 나눈 값의 산술 평균을 의미합니까? – Puigcerber

+0

나는 여기에 할당 된 하드 드라이브의 등급을 의미합니다 '{image : "images/gifs/water.gif", 등급 : 5, c 등. – vlovystack

답변

1

만약 당신이 이런 식으로 뭔가 할 필요가 컬렉션 뷰의 그 '양식을 제출'이벤트를 설정하는보기 :

this.model.set("rating", rating); 
: 그것은 모델보기 것입니다 경우

this.collection.get(id).set("rating", rating); 

건배.

관련 문제