javascript - 使用 Web Api Controller 验证表单

标签 javascript c# jquery ajax asp.net-mvc

我有一个 Web API 应用程序,其中有以下表单:

     <form id="editForm">

                    <input id="editid" type="hidden" name="id" />
                    <p><label>Numéro cnss </label><input id="cnss" name="cnss" /><label style="color:red" id="labError"> ( * )</label></p>
                    <p><label>Nom </label><input id="lastname" name="lastname" /><label style="color:red" id="labError"> ( * )</label></p>
                    <p><label>Prénom </label><input id="firstname" name="firstname" /><label style="color:red" id="labError"> ( * )</label></p>
                    <p><label>Adresse   </label> @Html.TextArea("address", new { id = "address" })<label style="color:red" id="labError"> ( * )</label></p>

                    <p><label>Lieu de naissance </label><input id="birth_place" name="birth_place" /> </p>
                    <p><label>Mutuelle </label><input id="mutuelle" name="mutuelle" /><label style="color:red" id="labError"> ( * )</label></p>
                    <p><label>Caisse d'assurance maladie </label><input id="caisse_assu_maladie" name="caisse_assu_maladie" /><label style="color:red" id="labError"> ( * )</label></p>

                    <p>
                        <label>Type de client   </label>
                        <select id="client_type" name="client_type">
                            <option value="demande de transport régulière sur une période">demande de transport régulière sur une période</option>
                            <option value="demande de transport régulière et indéfinie">demande de transport régulière et indéfinie</option>
                            <option value="Ponctuel ">Ponctuel </option>
                        </select>
                    </p>

                </form>
 <button id="btnStepTwo" type="submit" class="btn btn-primary" >Commencer la réservation</button>

在 Api Controller 中,我有以下操作:

 [HttpPost]
        public bool ValidateClient(ClientModel item)
        {
            return ModelState.IsValid;  
        }

我想为表单中的每个更改添加一个 javascript 方法,此方法调用 ValidateClient 服务来验证表单中的模型是否有效:如果模型有效==> 该按钮将被启用,否则它将被禁用。

  1. 我怎样才能完成这项任务?
  2. 最好、最简单的方法是什么?

最佳答案

您将 change() 事件附加到输入:

$('input').on('change', function (e) {
    var el = $(e.currentTarget);
    $.post(url, $('form').serialize(), function (data) {
        if (data) {
            // do stuff to "el"
        }
    });
});

从 REST Angular 来看,您可能希望使用正确的 HTTP 代码进行响应。如果模型无效,不确定 200 响应是否有意义。

关于javascript - 使用 Web Api Controller 验证表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30958634/

相关文章:

javascript - javascript可以重写外部文件吗

c# - 创建事件处理程序 +=

javascript - 当用户滚动网页时滚动 CSS 背景 - 视差?

jquery removeClass 除了第一项之外的所有项?

javascript - jQuery 多个内部回调和作用域

javascript - Javascript 函数的返回值

c# - 通过 C# 将消息放入 Websphere MQ 与手动放置相同的消息具有不同的数据长度

javascript - 安全地解开 jQuery 实例以获取包装的 DOM 元素

javascript - 在对象的嵌套数组中搜索字符串并设置 IsCheckedIn flag = true;

c# - 我怎样才能 catch 404?