Javascript 返回错误valid()的JS函数不是函数吗?
我正在使用jquery验证库,希望在ajax调用之前检查验证错误,但是 我得到一个错误,valid()不是函数 我还使用下面给出的jquery验证库。我的表单id是share,我使用两个不同的ajax调用,一个用于行更新,另一个用于批量更新Javascript 返回错误valid()的JS函数不是函数吗?,javascript,ajax,asp.net-mvc,validation,Javascript,Ajax,Asp.net Mvc,Validation,我正在使用jquery验证库,希望在ajax调用之前检查验证错误,但是 我得到一个错误,valid()不是函数 我还使用下面给出的jquery验证库。我的表单id是share,我使用两个不同的ajax调用,一个用于行更新,另一个用于批量更新 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.15.1/jquery.validate.min.js"></script> <s
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.15.1/jquery.validate.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validation-unobtrusive/3.2.6/jquery.validate.unobtrusive.min.js"></script>
var RowId = 0;
var tagvalue = 0;
function UpdateRow(id)
{
tagvalue = $("#TagVaule_" + id).val();
RowId = id;
if ($("#share").valid())
{
DisplayModal();
}
else
{
return false;
}
}
function DisplayModal()
{
$.ajax({
type: "GET",
url: '@Url.Action("Update","Home")',
data: {
id: RowId,
value: tagvalue
},
success: function(data)
{
$('#myModalContent').html(data);
$('#myModal').modal('show');
}
});
}
fORM
<form id="share">
@Html.AntiForgeryToken()
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="container col-md-12">
<table id="myTable" class="table table-hover table-striped table-bordered dataTable">
<thead>
<tr>
<th style="text-align:center">@Html.DisplayNameFor(m => Model.tags.First().Id)</th>
<th style="text-align:center">@Html.DisplayNameFor(m => Model.tags.First().TagName)</th>
<th style="text-align:center">@Html.DisplayNameFor(m => Model.tags.First().TagCategory)</th>
<th style="text-align:center">@Html.DisplayNameFor(m => Model.tags.First().TagValue)</th>
<th style="text-align:center"> Action</th>
</tr>
</thead>
<tbody>
@for (int i = 0; i < Model.tags.Count(); i++)
{
<tr>
<td>
@Html.DisplayFor(m => Model.tags[i].Id)
@Html.HiddenFor(m => Model.tags[i].Id)
</td>
<td>
@Html.DisplayFor(m => Model.tags[i].TagName)
</td>
<td>
@Html.DisplayFor(m => Model.tags[i].TagCategory)
</td>
<td>
@Html.EditorFor(m => Model.tags[i].TagValue, new { htmlAttributes = new { @id = "TagVaule_" + Model.tags[i].Id, @class = "form-control",required="required" } })
@Html.ValidationMessageFor(m => Model.tags[i].TagValue, "", new { @class = "text-danger" })
</td>
<td>
<button type="button" class="btn btn-danger" onclick="UpdateRow(@Model.tags[i].Id)">Update</button>
</td>
</tr>
}
</tbody>
</table>
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content" id="myModalContent">
</div>
</div>
</div>
<div class="form-group">
<div class="col-md-offset-5 col-md-10">
<button type="button" class="btn btn-danger" onclick="BulkUpdate()">BulkUpdate</button>
</div>
</div>
</div>
var-RowId=0;
var-tagvalue=0;
函数UpdateRow(id)
{
tagvalue=$(“#TagVaule"+id).val();
RowId=id;
如果($(“#共享”).valid())
{
displaymodel();
}
其他的
{
返回false;
}
}
函数displaymodel()
{
$.ajax({
键入:“获取”,
url:'@url.Action(“更新”、“主页”),
数据:{
id:RowId,
值:tagvalue
},
成功:功能(数据)
{
$('#myModalContent').html(数据);
$('myModal').modal('show');
}
});
}
形式
@Html.AntiForgeryToken()
@Html.ValidationSummary(true,“,new{@class=“text danger”})
@DisplayNameFor(m=>Model.tags.First().Id)
@Html.DisplayNameFor(m=>Model.tags.First().TagName)
@DisplayNameFor(m=>Model.tags.First().TagCategory)
@DisplayNameFor(m=>Model.tags.First().TagValue)
行动
@对于(int i=0;iModel.tags[i].Id)
@Html.HiddenFor(m=>Model.tags[i].Id)
@Html.DisplayFor(m=>Model.tags[i].TagName)
@DisplayFor(m=>Model.tags[i].TagCategory)
@Html.EditorFor(m=>Model.tags[i].TagValue,新的{htmlAttributes=new{@id=“TagVaule”+Model.tags[i].id,@class=“form control”,required=“required”})
@Html.ValidationMessageFor(m=>Model.tags[i].TagValue,“,新的{@class=“text danger”})
更新
}
批量更新
页面可能尚未插入jQuery的
验证程序库。请在jQuery的
标记后插入以下行:-
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"></script>
粘贴您的html代码#共享您的表单
id?Ronnie Tws您能详细说明一下吗?未捕获类型错误:$(…)。验证不是一个功能我认为您的验证插件无效,我已经更新了答案。请检查一下,罗尼还是一样的问题
$(document).ready(function(){
$("form").validate(); // can use id or class as form selector
});