Javascript 用于laravel数组验证错误的Jquery选择器
我尝试使用jQuery自动显示Laravel5.5Ajax错误验证 对于单个字段,使用以下代码是可行的:Javascript 用于laravel数组验证错误的Jquery选择器,javascript,jquery,laravel-5,Javascript,Jquery,Laravel 5,我尝试使用jQuery自动显示Laravel5.5Ajax错误验证 对于单个字段,使用以下代码是可行的: $.each(response.errors, function (key, value) { el.find('input[name="'+key+'"] , select[name="'+key+'"] , textarea[name="'+key+'"]').parent().append('<div class="error right-align pink-text
$.each(response.errors, function (key, value) {
el.find('input[name="'+key+'"] , select[name="'+key+'"] , textarea[name="'+key+'"]').parent().append('<div class="error right-align pink-text text-mute">'+value+'</div>');
});
因此,我的javascript找不到元素start\u date.0
如何使用带有该响应的jQuery选择元素(开始日期.0,开始日期.1)使用
错误['start\u date.0']
代替错误。开始日期.0
var myObj={“message”:“给定的数据无效”,“errors”:{“start_date.0”:[“可用性为0时需要start_date.0字段],“start_date.1”:[“start_date.1字段是必需的],“end_date.0字段是必需的],“end_date.1”:[“end_date.1字段是必需的]};
日志(myObj.errors['start_date.0'])代码>谢谢所有的答案,我通过使用id属性来结束这个问题,所以我的html标记应该是这样的
因为jquery不允许选择器中的点“.”模式,所以我的选择器应该是这样的
el.find('input[id=“select_date.0”]”)
所以我的代码应该是:
$.each(response.errors, function (key, value) {
el.find('input[id="'+key+'"],input[name="'+key+'"] , select[name="'+key+'"] , textarea[name="'+key+'"]').parent().append('<div class="error right-align pink-text text-mute">'+value+'</div>');
});
$。每个(响应、错误、函数(键、值){
el.find('input[id=“”+key+”],input[name=“”+key+”],select[name=“”+key+”],textarea[name=“”+key+”)).parent().append('+value+');
});
错误:函数(数据){
var response=JSON.parse(data.responseText);
var errorString=';
$.each(response.errors、函数(键、值){
errorString+='- '+value+'
';
});
errorString+='
';
$(“#errors”).html(errorString);
}
如果名称是start\u date[],是否可以使用jquery附加它?我不明白。追加表示您想将开始日期[0]
转换为开始日期。0
?是。。OP希望使用el.find('input[name=“”+key+”)
@Niladri:他说找不到元素start\u date.0
和如何使用jQuery和该响应选择元素?(start\u date.0,start\u date.1)
,我想我给出了问题的答案same@user2486我没有问题获取错误消息,我的问题是如何选择元素el.find('input[name=“start\u date.0”]”)
你检查了我的答案了吗我想你想在errors
中获取start\u date.0
的值吗?你解决了这个问题了吗?是的,请参阅下面的答案
$.each(response.errors, function (key, value) {
el.find('input[id="'+key+'"],input[name="'+key+'"] , select[name="'+key+'"] , textarea[name="'+key+'"]').parent().append('<div class="error right-align pink-text text-mute">'+value+'</div>');
});
error: function(data){
var response = JSON.parse(data.responseText);
var errorString = '<ul style="list-style: none;">';
$.each( response.errors, function( key, value) {
errorString += '<li><small>' + value + '</small></li>';
});
errorString += '</ul>';
$("#errors").html(errorString);
}