답변 해 주셔서 감사합니다.jquery.forms + colorbox + dataTable
나는 내가 많은 구글 요청했지만, 여기에 내가 colorbox, jquery.forms 및 JQuery와 함께 일하고 있어요
정말 ... 무엇을 해야할지 모르겠어요, 여기에 전문가가 아니에요. dataTable 플러그인은 동시에 테이블에 있습니다.
여기에는 사용자 만들기와 편집을위한 두 가지 형식이 있습니다. 사용자 링크 생성과 같은 스크립트는 완벽하게 정상적으로 작동합니다. 문제는 편집 사용자, 테이블에있는 링크,이 내용은 아약스, colorbox는 부분적으로 작동하며 색상 상자 창에 나타납니다. 그러나 "onComplete"기능의 스크립트는 더 이상 작동하지 않습니다. 여기에서 무엇을해야할지 모른다는 단서가 없습니다.이 통합을 위해 많은 백업을하지 않아도됩니다. colorbox 및 dataTable에 대해서만 {frame : true}를 사용하는 기사 나 물음표가 있습니다.
이가 작동하지 않는 영역
function cargarColorbox(){
$('.edit').colorbox({
OnComplete:function(){ //this is not workin
var formulario = $('#usuarios_edit');
var options = {success: mostrarRespuesta2};
$("#update_info").text('llegan js');
formulario.ajaxForm(options);
//Implementamos los listeners del formulario
function mostrarRespuesta2(responseText){
$("#update_info").removeClass();
$("#update_info").html(responseText);
}
}
});
}
function initTable()
{
return $('#DataTable').dataTable({
"sScrollY": "200px",
"bPaginate": true,
"bRetrieve": true,
"bProcessing": false,
"sAjaxSource": 'usuarios/listado',
"fnInitComplete": function(){
cargarColorbox();
},
});
}
function RefreshTable(tableId, urlData)
{
$.getJSON(urlData, null, function(json)
{
table = $(tableId).dataTable();
oSettings = table.fnSettings();
table.fnClearTable(this);
for (var i=0; i<json.aaData.length; i++)
{
table.oApi._fnAddData(oSettings, json.aaData[i]);
}
oSettings.aiDisplay = oSettings.aiDisplayMaster.slice();
table.fnDraw();
});
}
이이
$(document).ready(function() {
initTable();
$('#add').live('click', function(e){
e.preventDefault();
});
});
jQuery(document).ready(function(){
$('#add').colorbox({onComplete:function(){
//recogemos las variables que necesitaremos
var formulario = $('#usuarios_add');
var pass1 = $('#usuarios_pass');
var pass2 = $('#usuarios_pass2');
var email = $('#usuarios_email');
var confirmacion = "coinciden";
var longitud = "La contraseña debe estar formada entre 6-15 carácteres (ambos inclusive)";
var negacion = "No coinciden las contraseñas";
var vacio = "La contraseña no puede estar vacía";
var options = {success: mostrarRespuesta};
formulario.ajaxForm(options);
pass2.keyup(function(){
coincidePassword();
});
email.focusout(function(){
validar_email();
});
function mostrarRespuesta(responseText){
$("#update_info").removeClass();
$("#update_info").html(responseText);
}
function coincidePassword(){
var val1 = pass1.val();
var val2 = pass2.val();
if(val1 != val2){
$('#update_info').text(negacion).addClass('bad');
}
if(val1.length==0 || val2==""){
$('#update_info').text(vacio).addClass('bad');
}
if(val1.length<6 || val2.length>15){
$('#update_info').text(longitud).addClass('bad');
}
if(val1.length!=0 && val1==val2){
$('#update_info').text(confirmacion).removeClass('bad').addClass('good');
}
}
function validar_email()
{
valor = email.val();
var filter = /[\w-\.]{3,}@([\w-]{2,}\.)*([\w-]{2,}\.)[\w-]{2,4}/;
if(filter.test(valor)){
$('#update_info').text('El formato del E-mail es correcto').removeClass('bad').addClass('good');
}
else{
$('#update_info').text('Ese no es un formato de E-mail').addClass('bad');
}
}
}, onClosed:function(){
RefreshTable(table, 'usuarios/listado');
initTable();
}
});
});
'OnComplete'을'onComplete'으로 변경하십시오. –
좋은 신이여, 고마워 .. 나는 그게 그저 그런 것 같아 믿을 수가 없어 .- –
나는 이것을 답으로 추가 할 것이다. –