美好的一天感謝任何答案。jquery.forms + colorbox + dataTable
我不是一個專家在這裏,我問google了很多,但在這裏我真的不知道該怎麼辦...
我與顏色框,jquery.forms和jQuery工作。 dataTable插件同時在一張桌子上。
在這裏我有兩種形式,一種用於創建用戶,另一種用於編輯。 如創建用戶鏈接是關閉表的腳本工作得很好。 問題出在編輯用戶,表中的鏈接,這個內容來自ajax,colorbox部分工作,實現它然後出現在colorbox窗口中,但是其中的任何腳本,在「onComplete」函數中不再起作用。 我不知道如何從這裏做什麼,我沒有很好的備份這個集成,一些文章或問題標記只使用{frame:true}的colorbox和dataTable。
這裏的功能代碼:
這是不工作區域
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'。 –
好神,謝謝..我簡直不敢相信它就是這樣的 - –
我會加上這個作爲答案。 –