2016-09-06 2 views
-2

세 개의 컨트롤이 있습니다. 1) 태그 선택 2) 입력 태그 3) 입력 태그. 마지막 사용자는 위의 세 컨트롤에 항목을 만듭니다.이 컨트롤과 함께 다른 세 컨트롤 사용자가 즉, 항목을 만들 기회가 없습니다. 그들은 단지 readonly.Now 문제는 그 가치가 db 또는 not.If 있는지 여부를 확인하기 위해 처음 세 컨트롤을 전달하여 아약스 전화를 만들어야 만 모든 가치가 존재하는 경우 관련 값을 다른 3 개의 컨트롤에 채 웁니다. 오류 메시지가 없습니다.jquery onchange 메서드 또는 onchange보다 나은 다른 메서드

변경 방법에 jquery를 사용하여 db에 값을 보내는 첫 번째 세 개의 필드에 대한 세 번째 컨트롤을 생각했습니다. 그러나 처음 두 필드에 잘못된 입력이 발생할 수있는 좋은 해결책은 아닙니다.

+1

당신이 몇 가지 예제 코드 그래서 우리는 더 나은 당신이 작업하는 것을 볼 수 있습니다를 게시 할 수 있습니까? – NickyTheWrench

+0

사용자 정의 컨트롤/입력에 대한 조회 방법 기반을 만들었습니까 ?? 가장 좋은 방법은 DB에서 값을 확인하기 위해 버튼 (이름 "확인"이라고 말하십시오)을 사용하는 것입니다. UX 용으로로드 진행률을 추가하여 시스템이 여전히 작동 중임을 사용자에게 알릴 수 있습니다. –

+0

예. DB를 조회하는 중입니다. 제출을 제외하고는 버튼을 사용하지 않고 작업하게해야합니다. –

답변

0

나는 1000/2000ms마다 실행되는 setInterval을 사용하여 타이머를 만들 것을 제안합니다.

타이머가 3 가지 요소의 값을 모두 확인하는 간단한 함수를 실행하는 동안 아무것도 변경된 경우 ajax 호출을하고, 그렇지 않으면 다음 검사를 기다립니다.

function IsValuesChanged() { 
    if(selVal != $Select.val() || inpVal != $Input.val()) { 
    selVal = $Select.val(); 
    inpVal = $Input.val(); 
    return true; 
    } 
    return false; 
} 

function GetRelatives() { 
    // assume ajax called 
} 

setInterval(function() { if (IsValuesChanged()) GetRelatives(); }, 1500); 

시도 데모 : https://jsfiddle.net/7yxkmjfh/

+0

데이터 입력 화면의 경우이 논리는 작동하지 않습니다. –

관련 문제