Ho il seguente JSjquery ajax restituisce l'errore, ma è successo
function change_ajaxarea1(){
navigator.notification.activityStart();
$('#ajaxarea1').load('http://server.net/droiddev/backbone1/index.php/welcome/', function(){
navigator.notification.activityStop();
$('#ajaxarea1').css("height","auto");
//$('#ajaxarea1').css("overflow","hidden");
});
//navigator.notification.activityStart();
}
function postarticle(){
$.post("http://server.net/droiddev/backbone1/", { headline: "John", article: "2pm" });
}
function addarticle(){
var headlinetemp=$('#headline').val();
var articletemp=$('#article').val();
$.ajax({
type:'POST',
dataType:'json',
url: "http://server.net/droiddev/backbone1/index.php/welcome/addarticle/",
data: { 'headline': headlinetemp, 'article': articletemp},
success:function(){
alert('success');
},
error:function(xhr){
alert(xhr.status);
}
});
}
e il seguente codice di controllo:
<?php
class Welcome extends CI_Controller {
public function index()
{
$data['query']=$this->site_model->get_last_ten_articles();
$this->load->view('partial1',$data);
}
public function addarticle(){
$headline=$this->input->post('headline');
$article=$this->input->post('article');
$this->site_model->insert_entry($headline,$article);
}
}
L'addarticle() javascript opere Ajax e post i VAR di server e nel db, tuttavia, javascript eseguirà la funzione di errore invece della funzione di successo. Il codice di risposta http è 200 e ho pensato che potesse far funzionare la funzione Success. eventuali suggerimenti?
Ok, ho rimosso il tipo di dati: perché io non effettivamente bisogno tutto da rinviare quindi dopo che ha funzionato normalmente. Pensavo che il tipo di dati fosse per quale tipo di dati: la tua immissione. grazie –
No, l'input è sempre serializzato su querystring in get o stringa in post. Prego. –