Я новичок в PHP Codeigniter framework. Я разрабатываю страницу, в которой я использую ссылку. При нажатии на ссылку он вызывает функцию jquery, которая отправляет форму через jquery. Я использовал методы проверки формы кодаignign для проверки на стороне сервера и для того, чтобы я отключил проверку на стороне клиента.PHP Codeigniter form submit with JQuery
Проблема заключается в том, что в этом процессе, когда форма отправляется через jquery, метод проверки формы codeigniter не работает.
Но если я использую кнопку отправки, чтобы отправить форму, то метод проверки формы codeigniter работает отлично.
Пожалуйста, сообщите мне, что делать, если мне нужно отправить форму через jquery и использовать метод проверки формы codeigniter.
Вы можете найти код ниже:
Войти Форма:
<?php echo validation_errors(); ?>
<form name="login-form" id="login-form" method="post" action="<?php echo base_url();?>index.php/login/login_form" >
<H2>Login</H2>
<div id="login-box-name">
Email:
</div>
<div id="login-box-field">
<input name="user-name" id="user-name" class="form-login" title="Please Enter Correct User Name" value="" size="30" maxlength="2048" />
</div>
<div id="login-box-name">
Password:
</div>
<div id="login-box-field">
<input name="password" id="password" type="password" class="form-login" title="Please Enter Correct Password" value="" size="30" maxlength="2048" />
</div>
<br />
<span class="login-box-options">
<input type="checkbox" name="1" value="1" title="Want this computer to remember you!!"> Remember Me <a href="#" id="login-div-change">Forgot password?</a>
</span>
<br />
<br />
<a href="" id="login-submit">
<img src="<?php echo base_url();?>assets/images/login-btn.png" width="110" height="40" style="margin-left:90px;" />
</a>
<input type="submit" name="submit" id="submit" value="Submit" />
</form>
функция JQuery для отправки формы по нажатию на "ссылку":
$("#login-submit").click(function() { $('#login-form').submit(); return false; });
функция контроллера :
public function login_form() { $this->load->helper(array('form', 'url')); $this->load->library('form_validation'); $data['title'] = 'Log In'; $data['errorMessage'] = ''; $this->form_validation->set_rules('user-name', 'Email', 'required'); $this->form_validation->set_rules('password', 'Password', 'required'); if ($this->form_validation->run() == FALSE) { $this->load->view('templates/header', $data); $this->load->view('login', $data); $this->load->view('templates/footer'); } else { $this->load->view('templates/header', $data); $this->load->view('templates/menu'); $this->load->view('index', $data); $this->load->view('templates/footer'); } }
Здесь, если я нажму кнопку «Отправить форму формы», то проверка правильности кода работает для полей имени пользователя и пароля. Но если я нажму ссылку с id = "login-submit", тогда она вызывает функцию jquery и форму отправляется. Но на этот раз проверка правильности кода не работает для полей имени пользователя и пароля.
Мне нужно отправить форму по ссылке, и функция проверки правильности кода должна работать для этого.
Заранее спасибо .....
некоторый код может помочь ... Вы уверены, что вы вызываете ту же функцию в контроллере для JQuery и по умолчанию представить действия? – snaderss
DUDE! Я полностью люблю jquery и CI, использую его весь день, и позвольте мне рассказать вам кое-что, что поможет БОЛЬШО! Проверьте [этот плагин jQuery] (http://jquery.malsup.com/form/), это облегчит вам жизнь 100X, также не забудьте использовать 'print_r', когда вам нужно что-то увидеть с php-стороны, довольно сложение – SpYk3HH
Еще один совет, который я могу вам дать [закладки этой страницы] (http: // codeigniter.com/user_guide /) и использовать его часто, отличный способ использовать его - щелкнуть вкладку «Оглавление» в верхнем левом углу, когда она открывается, использовать (в хром - это то, что я использую) ctrl + f, чтобы вызвать «найти», то просто введите то, что вы ищете, и найдите ссылку быстро и просто – SpYk3HH