제목 | jQuery에서 클릭이벤트 일 때, 정렬 | ||
---|---|---|---|
글쓴이 | ci_chobo | 작성시각 | 2012/09/10 17:24:13 |
|
|||
ci php jquery 사용언어, mysql 디비 뷰에있는 sort를 클릭 했을 때 (jQuery) ~~.find('#sort').click(function() { 클릭이벤트 발생시 움직일 값 } 이런식으로되어있는데 저 sort를 클릭했을 때, 디비에 있는 정보를 보여주는데 $this->db->order_by('test', desc) 이런식으로 되어있습니다 문제없이잘돌아가는데 추가했으면 하는 기능이 있어서.. 정렬체크를 한 상태에서 sort를 한번 더 누르게 되면 역순으로 정렬이 나오게 할려고 하는데요 생각한건 임의의 변수에 체크값을 줘서 하면 될 줄 알았는데 클릭이벤트가 발생할 때 이게 체크됬던 값인지 안됬던 값인지 판별을 해야되고... 그러니까 클릭이벤트 발생할 때, jQuery에서 클릭을 할 때 이 상태 값이 눌려졌던 값인지 아니면 처음 눌린값인지를 알아야 할 것 같은데 막상 하려니까 생각이 안나네요 관련 도움말이나 지식좀 얻을 수 있을까요 ? |
|||
다음글 | db 쿼리 문제 (9) | ||
이전글 | db 검색시에.. (1) | ||
큐티카사
/
2012/09/10 17:56:27 /
추천
0
|
ci_chobo
/
2012/09/10 18:13:56 /
추천
0
큐티카사님 답변 감사합니다
조언대로 toggle 사용시 첫번째 이벤트 , 두번째 이벤트 , 첫번째 이벤트 ... 이렇게 나오는데 첫번째 이벤트, 두번째 이벤트 모두 form을 submit 시켜서 그런지 첫번째 이벤트가 발생하고 나면 두번째 이벤트가 발생하질 않네요 테스트는 주석처리하고 alert찍어서 했습니다 |
변종원(웅파)
/
2012/09/10 23:25:16 /
추천
0
하나의 히든 필드에 기본 값을 넣어놓고 클릭 이벤트 발생할때 그 필드값도 변경을 해주시면 됩니다.
submit이 일어나면 그 값도 전송이 되고 컨트롤러에서 처리후에 다시 뷰에 그 값을 전달해줘서 표시해주면 됩니다. |
ci_chobo
/
2012/09/11 08:34:51 /
추천
0
sort_test (기본 값 1) 이라고 가정을 하면, 맨 처음 페이지를 부를 땐 1로 부를텐데요.
클릭 이벤트 발생시 hidden값을 2라고 지정한 다음 submit 시키면 2로 넘어가서 다음 정렬을 가져올 수는 있는뎅.. 제가 질문에 포함을 안시켰었네요;; 원하는 방식이 클릭을 할 때 마다 정렬 역정렬 정렬 역정렬 .... 이런식으로 나오게 하고 싶습니다. 웅파님 글을 보고 홀수 짝수해서 나머지가 1이거나 0일때 차이점을 둘 생각을 했었는데 클릭할 때 마다 2가 전송이되니 맨처음말고는 달리 비교할 방법이 없는것 같아서요; |
변종원(웅파)
/
2012/09/11 09:42:48 /
추천
0
ci_chobo/ 다시 클릭하면 그 히든 값에 1이 들어가게 하면 됩니다. 클릭할때 값이 0,1,0,1로 변경이 되고
히든값을 먼저 변경시키고 submit 하면 변경된 값이 넘어갑니다. |
ci_chobo
/
2012/09/11 10:44:12 /
추천
0
웅파님 죄송합니다 ㅠㅠ 제가 이해를 잘 못하겠네요
다시 클릭해서 히든 값이 다시 1로 들어가게 하려면 그 과정은 jQuery에서 거쳐줘야 하는거 아닌가요 ? 클릭할때 값을 변환해야하니까요 view 에서 1값을 부르고 , jQuery에서 클릭했을 때 2값을 불러서 셋팅해주고 그 값으로 결과를 리턴하고 그런데 다시 jQuery에서 클릭을 해도 항상 2만 셋팅해주니깐 그러네요 두번 클릭했을 때 실행되게 똑같은 함수를 2개만들어서 가져온 값이 1일때 2로 셋팅을, 2일때 1로 셋팅을 해서 값을 다르게 하는건가요 ? |
ci_chobo
/
2012/09/11 11:17:49 /
추천
0
아, 저렇게 하니 정렬 역정렬이 됩니다, 다만. 정렬을 해야 하는게 한두개가 아니라.. 코드가 좀 길어질뿐
웅파님감사합니다 |
http://api.jquery.com/toggle-event/
(jQuery)
~~.find('#sort').toggle(function()
{
클릭이벤트 발생시 움직일 값
},function(){
한번더 클릭 발생시 움직일 값
})