안녕하세요, 저는 재사용 가능한 javascript/ajax 함수를 입력 텍스트 상자, 체크 박스 등의 유효성 검사에 사용하고 있습니다. 하지만 아약스를 사용하여 일종의 일반 유효성 검사기를 만들려고합니다.Jquery ajax : dynamic success function
<?php
//contains php variables passed during after rendering the view
$url = //...some url;
$data = // array()... some array containing parameters;
$success = // should contain a string defining a function;
?>
그래서 내가 필요한 얻을 PHP 변수와 같은 아약스에 사용하기 위해, 자바 스크립트에 전달할 : 지금까지 나는이를함으로써 내 URL 및 데이터 동적으로 만들 관리했습니다 :
<script>
$(document).ready(function(){
var submitUrl = '<?php echo Yii::app()->createAbsoluteUrl($url); ?>';
var params = <?php echo json_encode($data); ?>;
$.ajax({
url : submitUrl,
type : 'POST',
async : false,
data : params,
success : ??? // i don't know how to define this function dynamically based on php values
});
});
</script>
나는 성공 함수를 동적으로 정의하는 방법을 모른다. 나는 정의를 시도했다 :
var successFunction = <?php echo json_encode("function(response){ return 'sample response' ; }");?>;
운 없음. 어떻게 성공 함수를 정의하는 문자열에서 동적으로 성공 함수를 넣을 수 있습니까? 많은 감사합니다!
--------------------------------- 추가 ------------ -------------------------------
실제로 저는 X- 편집 가능한 확장 기능을 사용하고 있습니다. 문제는 지금까지 동적 나는 submitUrl 동적했습니다이며, editableType
validate : function(value){
//do some validation rules like if value < someValue or is a negative, or character
}
:
$('.editable').editable({
type : editableType,
savenochange : true,
pk : 1,
emptytext: 'Click to edit',
params : function(){
return jsParameters;
},
url : submitUrl,
validate : validateFunction,
});
우리는 다음과 같이 검증 사용합니다. 검증 부분에서는 실패했습니다. 동적 인 편집 가능한 유형이 있기 때문입니다. 값은 날짜, 텍스트, 숫자 등일 수 있습니다. 그리고 이것들은 다른 검증 규칙을 가지고 있습니다. 데이터베이스에서 무언가를 체크 할 필요가 있다면 또 다른 아약스 호출이 필요할 수도 있습니다. 렌더링 후보기에 전달 된 일부 PHP 변수를 기반으로 유효성 검사 함수를 동적으로 만들고 어떤 유효성 검사 규칙이 적절한 지 확인하려고했습니다. 이게 가능합니까? 아니면 공상 과학 영화를 만들고 있습니까? 많은 감사!
이 http://jqueryvalidation.org/ 같은 검증 플러그인을 사용하여 수행하는 것이 더 쉬울 수 있지 않을까요? – Barmar