백본

2013-09-05 4 views
1

내가 백본에 jQuery를에 기록 된 응용 프로그램을 마이그레이션 생각하고있는 형태의 값을 받고하는 것은 몇 가지 테스트를하고있다. 저는 양식의 가치를 얻는 데 문제가 있습니다. 구식이거나 다른 기법 일 수있는 다양한 출처를 따릅니다. 여기백본

내가 가진 내가이보기에서 양식을 구속력이 주요 이슈에 댓글을 한 것입니다. 그러나 이것은 단순한 구문 문제 일 수 있습니다. 특히 var inputLongitude=$input.attr('longitude'); 행이 작동하지 않습니다. 나는 경도 값을 얻으려고 노력하고 있지만 단지 작동하지 않습니다. 이 e.target 또는 e.currentTarget (또는 둘 유일한 가공 jQuery를하기 때문에) 할 필요가있는 경우 또한 확실하지 않다. 이 문제를 해결하는 데 큰 도움이 될 것입니다. 내 양식에서 어떻게 경도 값을 얻을 수 있습니까? 미리

// no form tags on this piece 
<input type='text' id='phone' /> 
<input type='text' id='longitude' name='longitude' /> 
<button class='submit-detail'>submit</submit> 

var LocationDetailView = Backbone.View.extend({ 
    events: {'click .submit-detail':'submitModel', 'change input':'input_change'}, 
    initialize: function(){ 
     _.bindAll(this, 'input_change'); 
    }, 
    render: function(){ 
    .... // form is in here as a string 
    }, 
    input_change: function(e){ 
    var $input=$(e.currentTarget); 
    var inputLongitude=$input.attr('longitude'); // this doesn't work and I'm trying to get to work 
    var inputPhone=$input.attr('phone'); 
    var inputPhone=$('#phone').val(); 

    console.log("input was changed" + inputLongitude); // get undefined 
    console.log("input was changed" + inputPhone); // this works fine 

    } 

THX

답변

3

입력도없고 longitudephone 특성을 갖는다. 그 필드 값을 가져와야 할 것 같습니다.

$("#longitude").val(); //longitude value 
$("#phone").val(); //phone value 
  1. 당신은 ID로 요소 (필드)을 얻는다. $("#field_id") - ID == FIELD_ID으로는 HTMLElement 감싸 jQuery를 만들 수 있습니다.
  2. val()를 호출하여 그 값을 추출합니다.
+0

들으, 바로, 오히려 입력이 이러한 특성을 가지고 있는지 확인 거라고 나는 것 같아? 그 표준적인 백본이 아닌가? 나는 대부분 서버 dev을 사용하므로이 작업을 수행하는 가장 좋은 방법을 찾으려하고있다. – timpone

+0

@timpone 그건별로 도움이 안돼. 이러한 속성은 사용자가 입력 값을 변경할 때 업데이트되지 않습니다. 이 글을 읽는 것이 좋습니다. http://backbonejs.org/docs/todos.html 백본에는 양방향 데이터 바인딩이 내장되어 있지 않습니다. js 모델에 대한 입력을 자동으로 바인딩하는 프레임 워크를 찾고 있다면 Knockout을 살펴보십시오. –