html checkbox点击事件失效

今天在做项目,checkbox添加点击事件,不会回调。经过排查发现是项目中调用了

AdminTEL,导致checkbox点击失效

经过查询AdminTEL文档发现:

Callback name When used
ifClicked user clicked on a customized input or an assigned label
ifChanged input’s checkeddisabled or indeterminate state is changed
ifChecked input’s state is changed to checked
ifUnchecked checked state is removed
ifToggled input’s checked state is changed
ifDisabled input’s state is changed to disabled
ifEnabled disabled state is removed
ifIndeterminate input’s state is changed to indeterminate
ifDeterminate indeterminate state is removed
ifCreated input is just customized
ifDestroyed customization is just removed

 

$('input').on('ifChecked', function(event){
alert(event.type + ' callback');
});

按照上图所示,终于可以触发事件了。

Yii2.0——请求(Request)

Yii2.0中一个应用的请求是用 yii\web\Request对象来表示的

  • 请求参数

可以调用request组件的get()/post(),获取到对应的请求参数。

<?php
/**
 * Request
 * User: Administrator
 * Date: 2017/7/2
 * Time: 11:44
 */

namespace app\controllers;

use yii\web\Controller;

class RequestController extends Controller
{
    function actionRequest()
    {
        $request = \Yii::$app->request;
        //等价于: $get = $_GET;
        $get = $request->get();
        //等价于: $id = isset($_GET['id']) ? $_GET['id'] : null;
        $get = $request->get('id');
        //等价于: $id = isset($_GET['id']) ? $_GET['id'] : 1;
        $get = $request->get('id','1');

        //等价于: $post = $_POST;
        $post = $request->post();
        //等价于: $name = isset($_POST['name']) ? $_POST['name'] : null;
        $post = $request->post('name');
        //等价于: $name = isset($_POST['name']) ? $_POST['name'] : '';
        $post = $request->post('name','');

        //获取所有参数
        $params = $request->bodyParams;
        //返回指定的参数
        $params = $request->getBodyParam('name');
    }
}

获取当前的请求方式


      $request = \Yii::$app->request;
      if ($request->isAjax) { /* 该请求是一个 AJAX 请求 */ }
      if ($request->isGet)  { /* 请求方法是 GET */ }
      if ($request->isPost) { /* 请求方法是 POST */ }
      if ($request->isPut)  { /* 请求方法是 PUT */ }

request 组件提供了许多方式来检测当前请求的URL。

假设被请求的URL是 http://example.com/admin/index.php/product?id=100, 你可以像下面描述的那样获取URL的各个部分:

    yii\web\Request::url:返回 /admin/index.php/product?id=100, 此URL不包括host info部分。
    yii\web\Request::absoluteUrl:返回 http://example.com/admin/index.php/product?id=100, 包含host infode的整个URL。
    yii\web\Request::hostInfo:返回 http://example.com, 只有host info部分。
    yii\web\Request::pathInfo:返回 /product, 这个是入口脚本之后,问号之前(查询字符串)的部分。
    yii\web\Request::queryString:返回 id=100,问号之后的部分。
    yii\web\Request::baseUrl:返回 /admin, host info之后, 入口脚本之前的部分。
    yii\web\Request::scriptUrl:返回 /admin/index.php, 没有path info和查询字符串部分。
    yii\web\Request::serverName:返回 example.com, URL中的host name。
    yii\web\Request::serverPort:返回 80, 这是web服务中使用的端口。

HTTP头

    // $headers 是一个 yii\web\HeaderCollection 对象
    $headers = Yii::$app->request->headers;
    // 返回 Accept header 值
    $accept = $headers->get('Accept');
    if ($headers->has('User-Agent')) { /* 这是一个 User-Agent 头 */ }

客户端信息
获取host name 和客户端的ip地址

    $userHost = Yii::$app->request->userHost;
    $userIP = Yii::$app->request->userIP;