[fastadmin]第十三篇 在FastAdmin中通过Ajax实现表单验证和中文转拼音功能

[fastadmin] 第十三篇 在 FastAdmin 中通过 Ajax 实现表单验证和中文转拼音功能#

需求#

本篇文章讨论的需求是如何在 FastAdmin 中,通过使用 Ajax 来实现表单验证和中文字符转拼音码的功能。

实现策略#

我们可以通过写一个 API 实现中文字符转拼音码的功能。首先,我们需要新建一个控制器,然后在其中编写以下代码。你可以在任何你喜欢的文件中创建这个控制器,注意的是路由必须能够访问该控制器。

<?php
namespace app\admin\controller\pz;
use app\common\controller\Backend;

/**
 * pz 公共api
 *
 * @icon fa fa-circle-o
 */
class Pztool extends Backend
{
    /**
     * Ypdlpz模型对象
     * @var \app\admin\model\pz\Pztool
     */
    //protected $model = null;

    public function _initialize()
    {
        parent::_initialize();
        //$this->model = new \app\admin\model\pz\Ypdlpz;
    }

    public function chineseToPinYin()
    {
        $chinese = $this->request->param(<chinese<);
        $pinyin = new \Overtrue\Pinyin\Pinyin();
        $pinyin = $pinyin->permalink($chinese, <<);
        $result = array("data" => $pinyin, "code" => "200", "msg" => "success");
        return json($result);
        //return $result;
    }
}

接着,我们需要在 Javascript 代码中调用这个 API,并完成对 input 元素的赋值。这部分的代码可以在你需要的任何 Javascript 文件中完成。

例如,这里 第十二篇 写的 setinterval 中中增加了一个判断。

// 商品名 拼音码
if (spm !== <<) {
    fieldsArr[<row[spmpym]<] = "required;zimu";
  // 发ajax 请求,直接赋值拼音码
  if (spmpym == <<) {
        $.ajax({
            url: <pz/pztool/chineseToPinYin<,
  type: <POST<,
  dataType: <json<,
  data: {chinese: spm},
  success: function (data) {
                if (data.code == "200") {
                    $(<#c-spmpym<).val(data.data);
  } else {
                    $(<#c-spmpym<).val(<<);
  }
            }
        })
    }
}else{
    ignoreArr.push(<#c-spmpym<);
  $(<#c-spmpym<).val(<<);
}
// 拼音码 非必填

结果展示#

这就是我们通过 Ajax 在 FastAdmin 中实现表单验证和中文字符转拼音码功能的示例。

[fastadmin]第十三篇 fastadmin form 表单ajax验证 实现ajax input转拼音码

本作品采用《CC 协议》,转载必须注明作者和本文链接
嗨,我是波波。曾经创业,有收获也有损失。我积累了丰富教学与编程经验,期待和你互动和进步! 公众号:上海 PHP 自学中心
wangchunbo
司机 @ 某医疗行业
文章
307
粉丝
352
喜欢
565
收藏
1130
排名:61
访问:12.5 万
私信
所有博文
社区赞助商