![](/img/trans.png)
[英]How to call javascript function in the index of a controller in codeigniter?
[英]How to call a javascript function in controller of codeigniter?
我有这样的看法
<p>
<div id="error_msg" class="alert alert-error"> //at this div have css .alert{display:none;}
<a class="close click_close">X</a>
<strong>oops!</strong> username atau password yang anda masukan salah
</div>
</p>
在我的控制器里
public function login_form() {
$this->form_validation->set_rules('username', 'Username', 'required|trim|xss_clean');
$this->form_validation->set_rules('password', 'Password', 'required|md5|xss_clean');
$this->form_validation->set_error_delimiters('<span class="error">', '</span>');
if($this->form_validation->run()==FALSE) {
$this->load->view('v_admin_login');
} else {
$username = $this->input->post('username');
$password = $this->input->post('password');
$cek = $this->m_admin_login->getAdmin($username, $password, 1, 1);
if($cek <> 0) {
$this->session->set_userdata('isLogin', TRUE);
$this->session->set_userdata('username',$username);
$this->session->set_userdata('level',$level);
redirect('admin');
} else {
//I want to change class alert to .alert{display:block}
//What should I do?
}
}
}
关键是我想在输入用户名或密码错误的情况下用class alert显示div。
打印javascript代码就像使用ECHO命令的字符串一样,但不要忘记放置标记。 看我的例子:
<?
class Test extends CI_Controller {
function Test() {
parent::__construct();
}
function index() {
echo "<script language=\"javascript\">alert('test');</script>";
}
}
他们不可能将javascript代码包含到控制器中。
可能的解决方案
方法一:
创建一个错误视图,何时您想要显示一些错误重定向用户到该页面。
方法二:
public function login_form() {
$CI = & get_instance(); /// Added New line
$this->form_validation->set_rules('username', 'Username', 'required|trim|xss_clean');
$this->form_validation->set_rules('password', 'Password', 'required|md5|xss_clean');
$this->form_validation->set_error_delimiters('<span class="error">', '</span>');
if($this->form_validation->run()==FALSE) {
$this->load->view('v_admin_login');
} else {
$username = $this->input->post('username');
$password = $this->input->post('password');
$cek = $this->m_admin_login->getAdmin($username, $password, 1, 1);
if($cek <> 0) {
$this->session->set_userdata('isLogin', TRUE);
$this->session->set_userdata('username',$username);
$this->session->set_userdata('level',$level);
redirect('admin');
} else {
/// Added New Section
$this->theme->set_message('Your error Msg', 'error');
$data = array("username" => $this->input->post('username');,
"password" => $this->input->post('password');,
"ci" => $CI
);
}
}
$this->theme->view($data, "Your view page"); /// Added New line
}
现在在视图中
将此行放在要显示msg的位置
<?php echo $ci->theme->message(); ?> /// Added New line
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.