2010-06-04 3 views
0

양식/제출 구조를 사용하지 않고 요소 값을 $ ajax-> 링크로 전달해야합니다.

<%= link_to_remote "#{item.to_s}", 
    :url => { :action => :add_mpc }, 
    :with => "'category=' + $F('mpc_category')" -%> 

하지만 이것은 않습니다 : (나는 액션을 트리거하고이를 통해 내가 클릭 가능한 링크의 동적으로 설정 번호를 가지고 있기 때문에)

은이 같은 자바 스크립트 함수의 $의 F 프로토 타입을 사용하여 루비에서이 작업을 수행하는 데 사용 CakePHP의에서 작동하지 :

<?php echo $ajax->link(substr($vehicle['vehicles']['year'], -2), 
     array('action' => 'add_mpc', 'category' => '$F("mpc_category")'), 
     array('update' => 'results', 'position' => 'top')); ?> 

PHP는 변수 대신에 자바 스크립트에 대한 호출로 $ F를 본다. Javascript에 익숙하지 않지만이 링크를 통해 'mpc_category'입력 요소의 값을 컨트롤러에 전달하는 또 다른 방법이 있습니까? 나는 며칠 동안이 특정 문제를 다루는 사람을 찾을 수 없었습니다. 도움을 주셔서 감사합니다.

편집 : PHP 구문의 고정 구문.

답변

0

케이크를 실제로 사용하지는 않았지만 레일을 사용했습니다. js 부분은 완전히 문자열이어야합니다. 이 같은 아마 뭔가 : 나는 아약스 링크에서 PARAMS에 "$ 키 = $ 값을"압정으로 고정 있으리라 믿고있어

<?php echo $ajax->link(substr($vehicle['vehicles']['year'], -2), 
    array('action' => 'add_mpc', 'category' => "$F('mpc_category')"), 
    array('update' => 'results', 'position' => 'top')); ?> 

. 또한 두 번째 줄 끝에 쉼표가 누락되었습니다.

<?php echo $ajax->link($year, 
    array('action' => 'add_row', 
     'category' => $category, 
     'product' => $product.$newpart, 
    array('update' => $summary['summary']['id']." ".$vehicle['vehicles'], 
      'with' => "$('app_select').serialize()")); ?> 

'with' => "$('app_select').serialize()" 양식을 제출하지 않고 형태 중의 값을 잡고 부분 인 :

+0

네, 너무 성급하게 입력 한 것처럼 보입니다. 이 매개 변수를 더 읽기 쉽도록 지우는 대신 쉼표를 잃어 버렸습니다. [카테고리] => $ F() 과에 : 나는 "$ F ('mpc_category')"따옴표를 넣을 때 나는 따옴표와 함께 그것을 시도했다 그것은으로 PARAMS에 표시 url : /category : $ F (/ [mpc_category /] => [quot;]] 그래도 여전히 요소의 값을 반환하지 않고 텍스트를 컨트롤러에 전달하기 만하면됩니다. . – TwoThumbs

+0

마찬가지로, $ F ('category')를 document.getElementByID ('category')로 대체하면 value; 정확하게 문자열로 전달되지는 않았지만 올바르게 평가되지는 않습니다. document.getElementById를() URL에 : 는 I은 상기에서 PARAMS [분류] => document.getElementById를()의 결과와 카테고리가있다. 그래서, 매개 변수를 문자열로 전달하는 것 외에 다른 일이 일어나고있는 것 같지만 그게 무엇인지 모릅니다. – TwoThumbs

0

이제 몇 일 동안이 작업 후, 나는 가지고 올 것 중에 최고는 이것이다 .

그러나 양식 요소 중 하나만 필요했기 때문에 전체 직렬화 된 양식을 컨트롤러에 전달할 때 이상적이지 않습니다.

폼이든 아니든 관계없이 모든 요소에서이 작업을 수행 할 수 있기를 원하지만이 방법은 그렇게하지 않는 것 같습니다. 아마 프로토 타입에 익숙한 누군가가 그것에 대해 약간의 비춰 줄 수 있습니다.

+0

위의 내용을 명확히하기 위해이 방법으로 요소 id를 전달할 수 있지만 하나 이상의 요소를 전달하려는 경우 두 요소 모두를 다른 요소 나 형식으로 묶어야합니다.두 가지 요소를 전달할 방법을 찾을 수 없습니다. – TwoThumbs

관련 문제