My problem is when I call some function than render in a definite div, not send my request. This is my function.
<script type="text/javascript">
//<![CDATA[
function ajaxFunction() {
var xmlHttp;
try {
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
return xmlHttp;
} catch (e) {
// Internet Explorer
try {
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
return xmlHttp;
} catch (e) {
try {
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
return xmlHttp;
} catch (e) {
alert("Tu navegador no soporta AJAX!");
return false;
}}}
}
function CargarDatos(_pagina,capa) {
var ajax;
ajax = ajaxFunction();
ajax.open("POST", _pagina, true);
ajax.setRequestHeader("Content-Type",
"application/x-www-form-urlencoded");
ajax.onreadystatechange = function()
{
if (ajax.readyState==1){
document.getElementById(capa).innerHTML = " Aguarde por favor...";
}
if (ajax.readyState == 4)
{
document.getElementById(capa).innerHTML =
ajax.responseText;
}}
ajax.send();
}
And this is the line where I call this function
<li><h:commandLink action="#{personal.cargarEvento}" onclick="CargarDatos('pages/Politica/nacional/inicio.html','content'); " value="Nacional" >
If I use this line the render works
<li><h:commandLink action="#{personal.cargarEvento}" onclick="mojarra.jsfcljs (CargarDatos('pages/Politica/nacional/inicio.html','content')); " value="Nacional" >
But generate a JavaScript error and not call my Bean.
The target is when I click some element render other page in a div and simultaneously execute some method in one bean.
What is wrong?
How can I make it work?