2014-12-18 5 views
0

Я использую codeignitor для разработки PHP-приложений. Я пытался использовать ajax-вызов, используя jquery. Но он работает неправильно. Когда я нажимаю кнопку отправки, одна и та же форма перезагружается, а не появляется окно предупреждения. Ваша помощь будет очень полезна. Я делюсь код -Ajax php не работает

<html> 
<head> 
    <title> My Information </title> 
    <script type="text/javascript" src="/jquery/jquery-1.3.2.min.js"></script> 
    <script type="text/javascript" language="javascript"> 
    $(document).ready(function() { 
    $('#submit').click(function(){ 

    // alert('Btn clicked'); 
    var form_data= { 
    username: $('#username').val(), 
    address: $('#address').val()  
    }; 

    $.ajax({ 
     type: 'POST', 
     url: 'http://localhost/ci-ajax/index.php/user/auth', 
     data: form_data, 
     success: function(data) { 
      $('body').html(data); 
     }       


    }); 

    }); 

    }); 

    </script> 
    </head> 
    <body> 
    <form> 
    <label>User Name : </label> 
    <input type="text" name="username" id="username"> 
    <label>Address : </label> 
    <input type="text" name="Address" id="address"> 
    <input type="submit" value="Submit" name="submit" id="submit"> 
    </form> 
</body> 
</HTML> 

Контроллер

Class : user and function auth 

public function auth() 
{ 
    echo "Welcome"; 
} 
+0

Кстати, вы можете захотеть использовать немного более свежую версию JQuery. – jeroen

ответ

2

Вам нужен способ, чтобы предотвратить представить действие. Вероятно, самым простым решением было бы изменить тип ввода от submit до button. Если вы хотите что-то еще, вы всегда можете preventDefault или просто return false в конце функции.

Пример с return false;:

$('#submit').click(function() { 

    // alert('Btn clicked'); 
    var form_data = { 
    username: $('#username').val(), 
    address: $('#address').val() 
    }; 

    $.ajax({ 
    type: 'POST', 
    url: '', 
    data: form_data, 
    success: function(data) { 
     $('body').html(data); 
    } 


    }); 

    return false; 

}) 
+1

И победитель! Это то, что предотвратит перезагрузку страницы +1 для предоставления примера: D – Darren

1

в вашем коде, форма имеет вход подать, поэтому, когда нажмите представить, форма будет занесена на сервер. Так добавить возвращение в $ («# Submit»). Нажмите (функция() {}. в противном случае форма будет представлять.

Смежные вопросы