代码如下
<form id="poll" name="poll" method="post" action="plugin.php?id=rewardpoll:rewardpollaction?action=votepoll&fid=$fid&tid=$tid&pollsubmit=yes&quickforward=yes" onsubmit="ajaxpost('poll', 'post_$post[pid]', 'post_$post[pid]');return false">-----------------------------function ajaxpost(formid, showid, waitid, showidclass, submitbtn, recall) {

var waitid = typeof waitid == 'undefined' || waitid === null ? showid : (waitid !== '' ? waitid : '');
var showidclass = !showidclass ? '' : showidclass;
var ajaxframeid = 'ajaxframe';
var ajaxframe = $(ajaxframeid);
var formtarget = $(formid).target;
alert(formtarget);
var handleResult = function() {
var s = '';
var evaled = false; showloading('none');
try {
if(BROWSER.ie) {
s = $(ajaxframeid).contentWindow.document.XMLDocument.text;
} else {
s = $(ajaxframeid).contentWindow.document.documentElement.firstChild.nodeValue;
}
} catch(e) {
if(AJAX['debug']) {
var error = mb_cutstr($(ajaxframeid).contentWindow.document.body.innerText.replace(/\r?\n/g, '\\n').replace(/"/g, '\\\"'), 200);
s = '<root>ajaxerror<script type="text/javascript" reload="1">showDialog(\'Ajax Error: \\n' + error + '\');</script></root>';
}
} if(s != '' && s.indexOf('ajaxerror') != -1) {
evalscript(s);
evaled = true;
}
if(showidclass) {
$(showid).className = showidclass;
if(submitbtn) {
submitbtn.disabled = false;
}
}
if(!evaled && (typeof ajaxerror == 'undefined' || !ajaxerror)) {
ajaxinnerhtml($(showid), s);
}
ajaxerror = null;
if($(formid)) $(formid).target = formtarget;
if(typeof recall == 'function') {
recall();
} else {
eval(recall);
}
if(!evaled) evalscript(s);
ajaxframe.loading = 0;
$('append_parent').removeChild(ajaxframe);
}; if(!ajaxframe) {
if (BROWSER.ie) {
ajaxframe = document.createElement('<iframe name="' + ajaxframeid + '" id="' + ajaxframeid + '"></iframe>');
} else {
ajaxframe = document.createElement('iframe');
ajaxframe.name = ajaxframeid;
ajaxframe.id = ajaxframeid;
}
ajaxframe.style.display = 'none';
ajaxframe.loading = 1;
$('append_parent').appendChild(ajaxframe);
} else if(ajaxframe.loading) {
return false;
} _attachEvent(ajaxframe, 'load', handleResult); showloading();
$(formid).target = ajaxframeid;
$(formid).action += '&inajax=1';
$(formid).submit();
alert( 'action:' + $(formid).action );
return false;
}=======================点提交后显示“未定义操作”,跟踪发现ajaxpost执行完了却没有执行
rewardpollaction,实在想不出什么问题了

解决方案 »

  1.   

    function ajaxpost(formid, showid, waitid, showidclass, submitbtn, recall) {var waitid = typeof waitid == 'undefined' || waitid === null ? showid : (waitid !== '' ? waitid : '');
    var showidclass = !showidclass ? '' : showidclass;
    var ajaxframeid = 'ajaxframe';
    var ajaxframe = $(ajaxframeid);
    var formtarget = $(formid).target;
    alert(formtarget);
    var handleResult = function() {
    var s = '';
    var evaled = false;showloading('none');
    try {
    if(BROWSER.ie) {
    s = $(ajaxframeid).contentWindow.document.XMLDocument.text;
    } else {
    s = $(ajaxframeid).contentWindow.document.documentElement.firstChild.nodeValue;
    }
    } catch(e) {
    if(AJAX['debug']) {
    var error = mb_cutstr($(ajaxframeid).contentWindow.document.body.innerText.replace(/\r?\n/g, '\\n').replace(/"/g, '\\\"'), 200);
    s = '<root>ajaxerror<script type="text/javascript" reload="1">showDialog(\'Ajax Error: \\n' + error + '\');</script></root>';
    }
    }if(s != '' && s.indexOf('ajaxerror') != -1) {
    evalscript(s);
    evaled = true;
    }
    if(showidclass) {
    $(showid).className = showidclass;
    if(submitbtn) {
    submitbtn.disabled = false;
    }
    }
    if(!evaled && (typeof ajaxerror == 'undefined' || !ajaxerror)) {
    ajaxinnerhtml($(showid), s);
    }
    ajaxerror = null;
    if($(formid)) $(formid).target = formtarget;
    if(typeof recall == 'function') {
    recall();
    } else {
    eval(recall);
    }
    if(!evaled) evalscript(s);
    ajaxframe.loading = 0;
    $('append_parent').removeChild(ajaxframe);
    };if(!ajaxframe) {
    if (BROWSER.ie) {
    ajaxframe = document.createElement('<iframe name="' + ajaxframeid + '" id="' + ajaxframeid + '"></iframe>');
    } else {
    ajaxframe = document.createElement('iframe');
    ajaxframe.name = ajaxframeid;
    ajaxframe.id = ajaxframeid;
    }
    ajaxframe.style.display = 'none';
    ajaxframe.loading = 1;
    $('append_parent').appendChild(ajaxframe);
    } else if(ajaxframe.loading) {
    return false;
    }_attachEvent(ajaxframe, 'load', handleResult);showloading();
    $(formid).target = ajaxframeid;
    $(formid).action += '&inajax=1';
    $(formid).submit();
    alert( 'action:' + $(formid).action );
    return false;
    }