让PHP和JAVASCRIPT协同工作。

时间:2013-06-18 17:32:00

标签: php javascript

我有一个简单的php if语句,它基本上检查表单上的错误返回。

<?php if ($this->session->flashdata('error')): ?>
    <a href="#" class="close" data-dismiss="alert">&times;</a>
    <div class="alert alert-error" id="error"><?php echo $this->session->flashdata('error'); ?></div>
<?php endif ?>

我有这个脚本,我想放入这个PHP所以当php为真时,登录框或account-container将动摇。

$("#account-container").addClass("animated shake");

我尝试在php内部回显脚本,但当if为真时,所有这些都会在页面上显示echo ;

2 个答案:

答案 0 :(得分:1)

也许你可以使用这个脚本,我对jquery不太放心,你必须调整代码:

$(function(){
    if ($("#error").length !== 0) {
         $("#account-container").addClass("animated shake");
    }
});

将其作为javascript源放入标题中或嵌入脚本标记

$().load将包含处理程序挂钩到页面中的onload事件* 该函数只是检查页面中是否存在id错误和 如果是这种情况,请将类添加到#account-container元素。

  • 我不会使用$()。ready(),因为dom仍然可以部分呈现

参考文献:

http://api.jquery.com/ready/说onload事件使用.load()函数 警告<body onload="something">标记与jquery事件管理不兼容

http://api.jquery.com/load/可能有用

答案 1 :(得分:-1)

我认为您正在使用Jquery进行javascript抖动,您应该在页面准备好加载时调用javascript例程

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>shake demo</title>
  <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
  <style>
  #toggle {
    width: 100px;
    height: 100px;
    background: #ccc;
  }
  </style>
  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
</head>
<body>

<p>Click anywhere to shake the box.</p>
<div id="toggle">This is rendered by PHP</div>

<script>
$( document ).ready(function() {
  $( "#toggle" ).effect( "shake" );
});
</script>

</body>
</html>

请注意,整个页面都是由PHP呈现的,当文档渲染准备就绪时脚本将会运行。