Jqгery не обрабатывает нажатие на кнопку
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Login</title> <script type="text/javascript" src="jquery.js"></script> </head> <body> <form name = login accept-charset="UTF-8" method="post" > <table> <tr><td><input type="text" id="login" style="width: 161px; ">Имя пользователя</td></tr> <tr><td><input type="password" id="password" style="width: 157px; ">Пароль</td></tr> <tr><td><input type="button" id="inLogin" value="Войти" style="width: 101px; "></td></tr> <tr></tr> </table> </form> <script> $(document).ready(function(){ $(document).on("click", "#inLogin", function(){ $.ajax({ type: "POST", url: "localhost:8080/market/Auth", dataType: "text", data: "user="+$("#login").val()+"&pass="+$("#password").val(), success: function(data){ alert("Пришел ответ"); } }); }); }); </script> </body> </html> Подскажите что может быть не так в данном коде. По нажатию на кнопку отправить ни чего не происходит. Уже потерял надежду понять что здесь не так ?:help: |
leff87, зачем делегировать обработку события, если элемент сразу доступен?
Вставьте в конец своего документа этот код: (function(){ if(typeof $!='function') return alert('Библиотека jQuery не найдена'); if(!$('#inLogin').length) alert('Элемент с указанным ID не найден на странице'); })(); |
leff87,
в коде ошибок нет, есть проблема с сервером, лучше проверять не локально. |
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Login</title> <script type="text/javascript" src="jquery.js"></script> </head> <body> <form id="loginForm" accept-charset="UTF-8" method="post" > <table> <tr><td><input type="text" id="login" name="login" style="width: 161px; ">Имя пользователя</td></tr> <tr><td><input type="password" id="pass" name="pass" style="width: 157px; ">Пароль</td></tr> <tr><td><button type="submit" style="width: 101px; ">Войти</button></td></tr> <tr></tr> </table> </form> <script> $(document).ready(function(){ $("#loginForm").submit(function(){ var s = $(this).serialize(); $.ajax({ type: "POST", url: "localhost:8080/market/Auth", dataType: "html", data: s, async: true, success: function(jqXHR, textStatus) { ...... }); }); }); </script> </body> </html> вот так заработало. Хотя в чем была проблема я так и не понял. Зато сразу появилась другая проблема то что от сервера приходит напрямую в браузер печатается, а не функцией function(jqXHR, textStatus) обрабатывается. :cray: |
Цитата:
submit(function(event){event.preventDefault() |
Вы правы не работает. То что в javascript-ом написано.
Как позже выяснялось... Столько времени потратил и толку никого.:( Подскажите пожалуйста почему код в теме не хочет работать. Исходя из моей логики вроде все правильно написано. В интернете все перерыл там в примерах так же написано...:help: |
Цитата:
Цитата:
:-? |
Разобрался вроде 'access-control-allow-origin' вот это не давало коду работать.
Хотя если честно я досих пор не понял где же он нашел разные домены, вроде и страница на localhost и сервлет там же работает. Магия да и только или я не догоняю:blink: |
Часовой пояс GMT +3, время: 07:20. |