我在视图页面中有一个表单,在名为function Login()
的控制器中提交一个函数被调用
这是我的登录功能
function Login()
{
$EmailId = $this->input->post('mailId');
$Password = $this->input->post('password');
$res=$this->friendsmodel->CheckLogin($EmailId,$Password);
if($res==true)
{
$_SESSION['Authenticaton_user']="auth_user";
$this->session->set_flashdata('item', 'Thanks for logging in');
//I want to call javascript function from here
redirect('friends/Display_News');
}
else
{
$this->session->set_flashdata('item', 'Username Or Password is invalid');
redirect('friends');
}
}
现在想从if和else语句中调用名为topBar()
的javascript函数
这是我的剧本
function topbar(message)
{
var alert = $('<div id="alert">'+message+'</div>');
$(document.body).append(alert);
var $alert = $('#alert');
if ($alert.length) {
var alerttimer = window.setTimeout(function() {
$alert.trigger('click');
}, 5000);
$alert.animate({ height: $alert.css('line-height') || '50px' }, 200).click(function() {
window.clearTimeout(alerttimer);
$alert.animate({ height: '0' }, 200);
});
}
}
如何从这里调用javascript
答案 0 :(得分:3)
您无法从PHP控制器调用javascript函数,但是您可以将一些变量设置为视图的标志以调用该函数:
function Login()
{
// I don't know how you interact with your views, so I will just
// assume that it happens something like this:
if($res==true)
{
// call the function
$this->view->assign('callTopBar', true);
}
else
{
// do not call the function
$this->view->assign('callTopBar', false);
}
}
然后,在视图中:
<?php if ($this->callTopBar): ?>
<script type="text/javascript">
topbar();
</script>
<?php endif; ?>