我尝试使用jQuery ajax对Codeigniter中的一个控制器进行POST,但POST使用DATA返回成功,而在DATA内部则返回页面的HTML和PHP代码,而不是返回该行。
当我在浏览器上通过URL访问该功能时,它会工作并返回该行。
mods.js
$('#maspServidor').on('input', function(event){
event.preventDefault();
console.log("passei por aqui");
var maspServidor = $('#maspServidor').val();
if (maspServidor.length >= 3){
$.ajax({
url: "<?php echo base_url() ?>Control_mods/servidoresJSON",
data: {
'operacao': 'buscarPorMasp'
},
success: function(data){
console.log("DATA -> "+data)
},
error: function(error){
console.log("ERROR -> "+error)
},
type: "POST"
});
}
});
mods.php
<?php echo validation_errors(); ?>
<?php echo form_open('', $form_attr); ?>
<section class="panel panel-default padding_pequeno" id="dados_servidor">
<div class="panel-heading text-center">Dados do Servidor</div>
<div class="panel-body">
<div class="form-group" id="campoMaspServidor">
<label class="control-label" for="maspServidor">Masp</label>
<input class="form-control" type="number" min="99999" name="maspServidor" value="<?php echo set_value('maspServidor'); ?>" id="maspServidor" aria-describedby="maspServidor">
</div>
...
...
...
</div>
</div>
</section>
<?php echo form_close(); ?>
Control_mods.php
public function servidoresJSON(){
echo json_encode($this->Servidores_crud->servidoresPorMasp());
}
Servidores_crud.php
public function servidoresPorMasp(){
return $this->db->select('maspServidor')
->select('nomeServidor')
->like('maspServidor', '135') // this values is static just for tests
->get('servidores')
->result_array();
}
响应
DATA ->
<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message: Invalid argument supplied for foreach()</p>
<p>Filename: controllers/Control_mods.php</p>
<p>Line Number: 85</p>
<p>Backtrace:</p>
<p style="margin-left:10px">
File:
C:\xampp\htdocs\MinutaOnline\application\controllers\Control_mods.php<br />
Line: 85<br />
Function: _error_handler </p>
<p style="margin-left:10px">
File: C:\xampp\htdocs\MinutaOnline\index.php<br />
Line: 315<br />
Function: require_once </p>
</div><link
href="http://localhost/MinutaOnline/assets/css/vendor/bootstrap.min.css"
rel="stylesheet" type="text/css" />
<link href="http://localhost/MinutaOnline/assets/css/vendor/ie10-viewport-
bug-workaround.css" rel="stylesheet" type="text/css" />
<link href="http://localhost/MinutaOnline/assets/css/general.css" rel="stylesheet" type="text/css" />
<script src="http://localhost/MinutaOnline/assets/js/vendor/jquery.min.js"></script>
<script src="http://localhost/MinutaOnline/assets/js/vendor/bootstrap.min.js"></script>
<div class="container">
<!-- Static navbar -->
<nav class="navbar navbar-default">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="http://localhost/MinutaOnline/Control_login/menu">MinutaOnline</a>
</div>
<div id="navbar" class="navbar-collapse collapse" aria-expanded="false" style="height: 1px;">
<ul class="nav navbar-nav">
<li class="dropdown">
<a href="" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Minutas<span class="caret"></span></a>
<ul class="dropdown-menu">
<li>
<a href="http://localhost/MinutaOnline/Control_mods/index/1">
Mod. 03 F�RIAS-PR�MIO/ CONCESS�O
</a>
</li>
<li>
<a href="http://localhost/MinutaOnline/Control_mods/index/2">
Mod 04
</a>
</li>
</ul>
</li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Minha Conta <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="http://localhost/MinutaOnline/Control_login/logout">Sair</a></li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
</div><!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="http://localhost/MinutaOnline/assets/css/mods.css" rel="stylesheet" type="text/css" />
<script src="http://localhost/MinutaOnline/assets/js/mods.js"></script>
<script type="text/javascript">
json = '{"1":[{"idLotacao":"1","lotacao":"E.E. Jos\ufffd Ac\ufffdcio da Silva"}],"2":[{"idLotacao":"2","lotacao":"E.E. Armando Santos"},{"idLotacao":"3","lotacao":"E.E. Cel. Jos\ufffd Adolfo de Aguiar"},{"idLotacao":"4","lotacao":"E.E. Delfim Moreira"},{"idLotacao":"5","lotacao":"E.E. Dom Jos\ufffd Gaspar"},{"idLotacao":"6","lotacao":"E.E. Dr. Eduardo Montandon"},{"idLotacao":"7","lotacao":"E.E. Lia Salgado"},{"idLotacao":"8","lotacao":"E.E. Loren Rios Feres"},{"idLotacao":"9","lotacao":"E.E. Luiza de Oliveira Faria"},{"idLotacao":"10","lotacao":"E.E. Maria de Magalh\ufffdes"},{"idLotacao":"11","lotacao":"E.E. Padre Anacleto Giraldi"},{"idLotacao":"12","lotacao":"E.E. Padre Jo\ufffdo Botelho"},{"idLotacao":"13","lotacao":"E.E. Pio XII"},{"idLotacao":"14","lotacao":"E.E. Prof. Lu\ufffds Ant\ufffdnio Corr\ufffda de Oliveira"},{"idLotacao":"15","lotacao":"E.E. Rotary"},{"idLotacao":"16","lotacao":"E.E. Vasco Santos"}],"3":[{"idLotacao":"17","lotacao":"E.E. Padre Henrique Peeters"}],"4":[{"idLotacao":"18","lotacao":"E.E. Deir\ufffd Borges"},{"idLotacao":"19","lotacao":"E.E. Dr. Jos\ufffd Cordeiro de Campos"},{"idLotacao":"20","lotacao":"E.E. Padre Clemente de Maleto"}],"5":[{"idLotacao":"21","lotacao":"E.E. Bom Sucesso"}],"6":[{"idLotacao":"22","lotacao":"E.E. Marechal Hermes"}],"7":[{"idLotacao":"23","lotacao":"E.E. Comendador Gomes"}],"8":[{"idLotacao":"24","lotacao":"E.E. Hercul\ufffdrgio Ant\ufffdnio Borges"},{"idLotacao":"25","lotacao":"E.E. Jos\ufffd Alexandre Miziara"}],"9":[{"idLotacao":"26","lotacao":"E.E. Dr Lindolfo Bernardes"}],"10":[{"idLotacao":"27","lotacao":"E.E. Ivan Mattar Soukef"}],"11":[{"idLotacao":"28","lotacao":"E.E. Ensino Fundamental"},{"idLotacao":"29","lotacao":"E.E. Jo\ufffdo Kopke"}],"12":[{"idLotacao":"35","lotacao":"E.E. Presidente Tancredo Neves"}],"13":[{"idLotacao":"30","lotacao":"E.E. Geralda Carvalho de Souza"},{"idLotacao":"31","lotacao":"E.E. Lauriston Souza"},{"idLotacao":"32","lotacao":"E.E. Maestro Josino de Oliveira"},{"idLotacao":"33","lotacao":"E.E. Professor Bandeira"},{"idLotacao":"34","lotacao":"E.E. Vicente de Macedo"}],"14":[{"idLotacao":"36","lotacao":"E.E. Alonso de Morais Andrade"},{"idLotacao":"37","lotacao":"E.E. Santo Ant\ufffdnio"},{"idLotacao":"38","lotacao":"E.E. Serra da Moeda"}],"15":[{"idLotacao":"39","lotacao":"E.E. Dom Alexandre"}],"16":[{"idLotacao":"40","lotacao":"E.E. Ant\ufffdnio Ferreira Barbosa"},{"idLotacao":"41","lotacao":"E.E. Joaquim Tiago de Queiroz"},{"idLotacao":"42","lotacao":"E.E. Nossa Senhora de Lourdes"},{"idLotacao":"43","lotacao":"E.E. Tiradentes"}],"17":[{"idLotacao":"44","lotacao":"E.E. Izoldino Soares de Freitas"}],"18":[{"idLotacao":"45","lotacao":"E.E. Professor Le\ufffdo Coelho de Almeida"}],"19":[{"idLotacao":"46","lotacao":"E.E. Coronel Oscar de Castro"}],"20":[{"idLotacao":"47","lotacao":"E.E. Alysson Roberto Bruno"}],"21":[{"idLotacao":"48","lotacao":"E.E. Marlene Martins Reis"}],"22":[{"idLotacao":"49","lotacao":"E.E. Bar\ufffdo da Rifania"},{"idLotacao":"50","lotacao":"E.E. Coronel Jos\ufffd Afonso de Almeida"},{"idLotacao":"51","lotacao":"E.E. de Ensino M\ufffddio"},{"idLotacao":"52","lotacao":"E.E. Dr. Jos\ufffd Afonso Pena J\ufffdnior"},{"idLotacao":"53","lotacao":"E.E. Sinhana Borges"}],"23":[{"idLotacao":"54","lotacao":"E.E. S\ufffdo Francisco de Sales"}],"24":[{"idLotacao":"55","lotacao":"E.E. Santa Juliana"}],"25":[{"idLotacao":"56","lotacao":"E.E. Prof\ufffd Cecilia M\ufffd de Resende Neves"}],"26":[{"idLotacao":"57","lotacao":"E.E. Am\ufffdrica"},{"idLotacao":"58","lotacao":"E.E. Anexa a Supam"},{"idLotacao":"59","lotacao":"E.E. Aur\ufffdlio Luiz da Costa"},{"idLotacao":"60","lotacao":"E.E. Bernardo Vasconcelos"},{"idLotacao":"61","lotacao":"E.E. Boulanger Pucci"},{"idLotacao":"62","lotacao":"E.E. Brasil"},{"idLotacao":"63","lotacao":"E.E. Carmelita Carvalho Garcia"},{"idLotacao":"64","lotacao":"CESEC"},{"idLotacao":"65","lotacao":"CEOPEE - Centro de Orienta\ufffd\ufffdo e Pesquisa em Educa\ufffd\ufffdo Especial"},{"idLotacao":"66","lotacao":"CIEL"},{"idLotacao":"67","lotacao":"C.E.M. Renato Frateschi"},{"idLotacao":"68","lotacao":"E.E. Dom Eduardo"},{"idLotacao":"69","lotacao":"E.E. Dr Jos\ufffd Mendon\ufffda"},{"idLotacao":"70","lotacao":"E.E. Prof. Minervino Cesarino"},{"idLotacao":"71","lotacao":"E.E. Fel\ufffdcio de Paiva"},{"idLotacao":"72","lotacao":"E.E. Fid\ufffdlis Reis"},{"idLotacao":"73","lotacao":"E.E. Frei Leopoldo de Castelnuovo"},{"idLotacao":"74","lotacao":"E.E. Gabriel Toti"},{"idLotacao":"75","lotacao":"E.E. Geraldino Rodrigues da Cunha"},{"idLotacao":"76","lotacao":"E.E. Henrique Kr\ufffdger"},{"idLotacao":"77","lotacao":"E.E. Horizonta Lemos"},{"idLotacao":"78","lotacao":"E.E. Irm\ufffdo Afonso"},{"idLotacao":"79","lotacao":"E.E. Lauro Fontoura"},{"idLotacao":"80","lotacao":"E.E. Leandro Ant\ufffdnio de Vito"},{"idLotacao":"81","lotacao":"E.E. Mal. Humberto de Alencar Castelo Branco"},{"idLotacao":"82","lotacao":"E.E. Miguel Laterza"},{"idLotacao":"83","lotacao":"E.E. Minas Gerais"},{"idLotacao":"84","lotacao":"E.E. Nossa Senhora da Abadia"},{"idLotacao":"85","lotacao":"E.E. Paulo Jos\ufffd Derenusson"},{"idLotacao":"86","lotacao":"E.E. Presidente Jo\ufffdo Pinheiro"},{"idLotacao":"87","lotacao":"E.E. Professor Alceu Novaes"},{"idLotacao":"88","lotacao":"E.E. Professor Chaves"},{"idLotacao":"89","lotacao":"E.E. Professor Hildebrando Pontes"},{"idLotacao":"90","lotacao":"E.E. Professora Corina de Oliveira"},{"idLotacao":"91","lotacao":"E.E. Quintiliano Jardim"},{"idLotacao":"92","lotacao":"E.E. Rotary"},{"idLotacao":"93","lotacao":"E.E. Santa Terezinha"},{"idLotacao":"94","lotacao":"E.E. S\ufffdo Benedito"},{"idLotacao":"95","lotacao":"E.E. Alo\ufffdzio Castanheira"},{"idLotacao":"96","lotacao":"E.E. Prof\ufffd Neide de Oliveira Gomes"},{"idLotacao":"97","lotacao":"E.E. Francisco C\ufffdndido Xavier"},{"idLotacao":"98","lotacao":"39\ufffd S R E - UBERABA"}],"27":[{"idLotacao":"99","lotacao":"E.E. Geraldino Rodrigues da Cunha"}],"28":[{"idLotacao":"100","lotacao":"E.E. Dom Pedro II"}],"29":[{"idLotacao":"101","lotacao":"E.E. Prof. Ant\ufffdnio da Silva"}]}';
</script>
</head>
<body>
<section class="container" id="cabecalho">
<div class="panel panel-default padding_pequeno">
<div class="">
<p class="text-justify">
<div class="col-xs-12 col-sm-2 brasao">
<img src="http://localhost/MinutaOnline/assets/images/brasao.png" alt="Brasão do Estado de Minas Gerais" class="brasao" /> </div>
<div class="col-xs-12 col-sm-10">
SECRETARIA DE ESTADO DE EDUCAÇÃO<br>
SUBSECRETARIA DE GESTÃO DE RECURSOS HUMANOS<br>
SUPERINTENDÊNCIA DE NORMAS E INFORMAÇÕES DE PESSOAL<br>
DIRETORIA DE LEGISLAÇÕES E NORMAS DE PESSOAL
</div>
</p>
</div>
<div class="panel-body">
<br>
<p class="text-justify"><b>
</b></p>
<div>
<p class="padding_pequeno">
SECRETARIA DE ESTADO DE EDUCAÇÃO<br>
<span>SUPERINTEND�NCIA DE ENSINO DE UBERABA</span><br>
DIRETOR (A): <span>MARILDA RIBEIRO RESENDE</span><br>
</p>
<p class="text-justify">
</p>
</div>
</div>
</div>
</section>
<section class="container" id="minuta">
<p><script type='text/javascript'>
window.onload = campoInvalido('campoMaspServidor','maspServidor','MASP inserido inválido');
</script></p>
<p><script type='text/javascript'>
window.onload = campoInvalido('campoNomeServidor','nomeServidor','Por favor digite o nome do servidor');
</script></p>
<form action="http://localhost/MinutaOnline/index.php/Control_mods/index/%3C" class="form-horizontal" method="post" accept-charset="utf-8">
<section class="panel panel-default padding_pequeno" id="dados_servidor">
<div class="panel-heading text-center">Dados do Servidor</div>
<div class="panel-body">
<div class="form-group" id="campoMaspServidor">
<label class="control-label" for="maspServidor">Masp</label>
<input class="form-control" type="number" min="99999" name="maspServidor" value="" id="maspServidor" aria-describedby="maspServidor">
</div>
<div class="form-group">
<label class="control-label" for="admissao">Admissão</label>
<select class="form-control" id="admissao" name="admissao" value="">
<option value="1" >01</option>
<option value="2" >02</option>
<option value="3" >03</option>
<option value="4" >04</option>
<option value="5" >05</option>
</select>
</div>
idCargo idNivel idGrau <div class="form-group">
<label class="control-label" for="cargo">Cargo</label>
<select class="inline form-control" id="idCargo" name="idCargo" value="">
<option value="1" >PEB</option>
<option value="2" >ASB</option>
<option value="3" >ATB</option>
<option value="4" >EEB</option>
<option value="5" >TDE</option>
<option value="6" >ANE</option>
<option value="7" >ANEI</option>
<option value="8" >AEB</option>
<option value="9" >ASE</option>
</select>
<select class="inline form-control" id="idNivel" name="idNivel" value="">
<option value="1" >1 / I</option>
<option value="2" >2 / II</option>
<option value="3" >3 / III</option>
<option value="4" >4 /IV</option>
<option value="5" >5 / V</option>
</select>
<select class="inline form-control" id="idGrau" name="idGrau" value="">
<option value="1" >A</option>
<option value="2" >B</option>
<option value="3" >C</option>
<option value="4" >D</option>
<option value="5" >E</option>
<option value="6" >F</option>
<option value="7" >G</option>
<option value="8" >H</option>
<option value="9" >I</option>
<option value="10" >J</option>
<option value="11" >L</option>
<option value="12" >M</option>
<option value="13" >N</option>
<option value="14" >O</option>
<option value="15" >P</option>
</select>
</div>
<div class="form-group" id="campoNomeServidor">
<!-- Quebrar linha -->
<label class="control-label" for="nomeServidor">
Nome do Servidor
</label>
<input class="form-control" name="nomeServidor" value="" id="nomeServidor" aria-describedby="nomeServidor"/>
</div>
<!-- Quebrar linha -->
<div class="form-group">
<label for="localidade" class="control-label" for="localidade">
Localidade
</label>
<select class="form-control" id="localidade" name="localidade" value="">
<option value="1" >Água Comprida</option>
<option value="2" >Araxá</option>
<option value="3" >Campo Florido</option>
<option value="4" >Campos Altos</option>
<option value="5" >Carneirinho (Estrela da Barra)</option>
<option value="6" >Carneirinho</option>
<option value="7" >Comendador Gomes</option>
<option value="8" >Concei��o das Alagoas</option>
<option value="9" >Conquista</option>
<option value="10" >Delta</option>
<option value="11" >Fronteira</option>
<option value="12" >Frutal (Distrito Aparecida de Minas)</option>
<option value="13" >Frutal</option>
<option value="14" >Itapagipe</option>
<option value="15" >Iturama Distrito de Alexandrita</option>
<option value="16" >Iturama</option>
<option value="17" >Limeira do Oeste</option>
<option value="18" >Pedrin�polis</option>
<option value="19" >Pirajuba</option>
<option value="20" >Planura</option>
<option value="21" >Pratinha</option>
<option value="22" >Sacramento</option>
<option value="23" >Santa Juliana</option>
<option value="24" >São Francisco de Sales</option>
<option value="25" >Tapira</option>
<option value="26" >Uberaba</option>
<option value="27" >Uni�o de Minas</option>
<option value="28" >Verissimo</option>
<option value="29" >Carneirinho (São Sebastião do Pontal)</option>
</select>
</div>
<div class="form-group">
<!-- Quebrar linha -->
<label class="control-label" for="idLotacao">
Órgão de lotação/exercício
</label>
<select class="form-control" name="idLotacao" id="idLotacao">
</select>
</div>
</div>
</section>
<section class="panel panel-default padding_pequeno" id="dados_minuta" >
<div class="panel-heading text-center">Dados da Publicação</div>
<div class="panel-body">
<div class="form-group" id="campoPublicarApartir">
<label class="control-label" for="publicarApartir">Publicar a partir de:</label>
<input class="form-control" type="date" name="publicarApartir" id="publicarApartir" value="2016-11-15" aria-describedby="publicarApartir">
</div>
<div class="form-group" id="campo{htmlId}">
<label class="control-label" for="{htmlName}">
{label}
</label>
<{htmlTag} class="{htmlClass}" id="{htmlId}" name="{htmlName}" value="" aria-describedby="{htmlId}" {htmlAttributes}>
</div>
{/camposMinuta}
</section>
<section class="panel panel-default padding_pequeno" id="dados_minuta">
<div class="panel-body">
<div class="row">
<div class="alinha_inicio col-xs-4 col-sm-2 col-md-2 col-lg-2">
<button type="button" name="voltar" id="voltar" class="btn btn-warning">Voltar</button>
</div>
<div class="alinha_centro col-xs-4 col-sm-2 col-sm-offset-3 col-md-2 col-md-offset-3 col-lg-2 col-lg-offset-3">
<button type="button" name="limpar" id="limpar" class="btn btn-default">Limpar</button>
</div>
<div class="alinha_final col-xs-4 col-sm-2 col-sm-offset-3 col-md-2 col-md-offset-3 col-lg-2 col-lg-offset-3">
<button type="submit" id="protocolar" class="btn btn-primary">Protocolar</button>
</div>
</div>
</div>
</section>
<div class="container">
<p class="text-justify">
</p>
</div>
</form> <footer>
<h6>
<p class="text-center">
<small>
Powered by Nerd Dash - 2016
</small>
</p>
</h6>
</footer>
</section>
</body>
<script type="text/javascript">
window.onload = function(){
console.log("idCargo -> "+document.getElementById('idCargo').value);
};
</script>
</html>