• remote机制的AdditionalFields


    有时为了在做远程机制时,多使用一个参数,可以加上AdditionalFields字段,该字段可以自定义数据,交给服务器验证。

    样例代码:

    类:

    public class ColumnVM : BaseObj
        {
            [Required(ErrorMessage = "请填写栏目的名称"), Remote("CheckColumnName", "Course", ErrorMessage = "已存在相同栏目", AdditionalFields = "ActionMethod")]
            public string Name { get; set; }
            public string IsParent { get; set; }
            public string ParentId { get; set; }
            public string ImageURL { get; set; }
        }

    控制器:

            public JsonResult CheckColumnName(string name, string actionMethod)//actionMethod是为了判断验证的方法是来自哪一个表单
            {
                bool result = false;
                //不包含文件夹名,则校验成功
                List<String> columnNames = columnBLL.GetAll().Select(a => a.Name).ToList();
                if (actionMethod == "Edit")
                {
                    columnNames.Remove(name);
                }
                result = !columnNames.Contains(name);
                return Json(result, JsonRequestBehavior.AllowGet);
            }

    前端:

     @using (Html.BeginForm("EditColumn", "Course", FormMethod.Post))//为了方便,本样例只写一个表单,另一个add表单内容相仿。
        {
            <input type="hidden" name="ActionMethod" value="Edit" />
            @Html.HiddenFor(a => a.Id)       
            <table class="t-tableAddAndEdit">
                <tr>
                    <th>
                        项目
                    </th>
                    <th>
                        详情
                    </th>
                </tr>
                <tr>
                    <td>
                        当前目录
                    </td>
                    <td id="editDirectory" style="color: #269DDC">
                        Root>
                    </td>
                </tr>
                <tr>
                    <td>
                        课程栏目名称
                    </td>
                    <td id="editColumnName">
                        @Html.TextBoxFor(model => model.Name, new { @class = "editColumn" })
                        @Html.ValidationMessageFor(model => model.Name)
                    </td>
                </tr>
            </table>
            <div style="height: 30px">
            </div>
            <input style="float: left; margin-left: 20px;" type="submit" value="确定" class="submitBtn" />
        }

    该样例实现依据传过来的方法的不同(是add还是edit),做相应的操作,判断文件名是否存在重复问题。

  • 相关阅读:
    第八次作业-非确定的自动机NFA确定化为DFA
    正规式到正规文法与自动机
    正则表达式基本介绍
    博客园源码不可copy的解决办法
    爬取湖北师范大学招生信息网中的专业简介
    利用爬虫爬取LOL官网上皮肤图片
    利用python的requests和BeautifulSoup库爬取小说网站内容
    python图像处理之PIL库
    Python之文件的使用
    python入门之jieba库的使用
  • 原文地址:https://www.cnblogs.com/Benjamin/p/2985181.html
Copyright © 2020-2023  润新知