Javascript 将错误放在其各自的div中
在这里,我从一个单独的页面获取错误消息,并将其显示在一个名为Javascript 将错误放在其各自的div中,javascript,jquery,html,laravel,laravel-4,Javascript,Jquery,Html,Laravel,Laravel 4,在这里,我从一个单独的页面获取错误消息,并将其显示在一个名为#stage_Error $('#stage_error').html(error_string); 因此,错误将显示如下 The bus no field is required. The comp id field is required. The total seats field is required. 但我想要的是在其各自的div中显示错误 i、 例如,总线号应显示在div附近,如下所示 我该怎么做 Json: {"b
#stage_Error
$('#stage_error').html(error_string);
因此,错误将显示如下
The bus no field is required.
The comp id field is required.
The total seats field is required.
但我想要的是在其各自的div中显示错误
i、 例如,总线号应显示在div附近,如下所示
我该怎么做
Json:
{"busno":["Bus No field is required"],"Comp Id":["Comp Id is required."]}
public function managebusregister()
{
$BusNo = Input::get('BusNo');
$CompID = Input::get('CompID');
$TotalSeats = Input::get('TotalSeats');
$data = Input::except(array('_token')) ;
$rule = array(
'BusNo' => 'required|unique:company_bus',
'CompID' => 'required',
'TotalSeats' => 'required|max:50'
) ;
$validator = Validator::make($data,$rule);
if ($validator->fails())
{
$messages = $validator->messages();
return json_encode($validator->messages()); //php encoded value
}
else
{
DB::insert('insert into company_bus (BusNo, CompID, TotalSeats) values (?, ?, ?)',
array($BusNo, $CompID, $TotalSeats));
return '';
}
}
更新:
请求脚本并显示错误:
<script>
$(document).ready(function() {
$("#driver").click(function(event) {
var BusNo = $("#BusNo").val();
var CompID = $("#CompID").val();
var TotalSeats = $("#TotalSeats").val();
var _token = $("#_token").val();
$.post("managebus_register", {
_token: _token,
BusNo: BusNo,
CompID: CompID,
TotalSeats: TotalSeats
},
function(data) {
if (data != '') {
obj = JSON.parse(data);
var error_string = '';
$.each(obj, function(entry) {
error_string += obj[entry] + '<br/>';
});
$('#stage_error').html(error_string);
} else {
$('#stage_success').text('Resistered Succesfully');
$("#stage_error").hide();
}
});
});
});
</script>
obj = JSON.parse(data);
var error_string = '';
$.each(obj, function(entry) {
error_string += obj[entry] + '<br/>';
if(entry == 'busno'){
$("#busno").html(obj[entry]);// like this for others also.
}
if(entry == 'Comp Id'){
$("#compid").html(obj[entry]);// like this for others also.
}
});
$('#stage_error').html(error_string);
Html代码:
<div id="stage_error" style="color:red;font-size:15px"></div>
<div id="stage_success" style="color:green;font-size:20px"></div>
除此之外,我还有每个字段的输入框
<input type="text" id="BusNo" name="BusNo"/>
<input type="text" id="CompID" name="CompID"/>
如何在相应字段附近抛出错误消息您可以这样尝试:
var json = JSON.parse('{"busno":["Bus No field is required"],"Comp Id":["Comp Id is required."]}');
// alert(json['busno']);
$("#busno").html(json.busno);// like this for others also.
在此处更改:
<script>
$(document).ready(function() {
$("#driver").click(function(event) {
var BusNo = $("#BusNo").val();
var CompID = $("#CompID").val();
var TotalSeats = $("#TotalSeats").val();
var _token = $("#_token").val();
$.post("managebus_register", {
_token: _token,
BusNo: BusNo,
CompID: CompID,
TotalSeats: TotalSeats
},
function(data) {
if (data != '') {
obj = JSON.parse(data);
var error_string = '';
$.each(obj, function(entry) {
error_string += obj[entry] + '<br/>';
});
$('#stage_error').html(error_string);
} else {
$('#stage_success').text('Resistered Succesfully');
$("#stage_error").hide();
}
});
});
});
</script>
obj = JSON.parse(data);
var error_string = '';
$.each(obj, function(entry) {
error_string += obj[entry] + '<br/>';
if(entry == 'busno'){
$("#busno").html(obj[entry]);// like this for others also.
}
if(entry == 'Comp Id'){
$("#compid").html(obj[entry]);// like this for others also.
}
});
$('#stage_error').html(error_string);
obj=JSON.parse(数据);
变量错误_字符串=“”;
$。每个(对象、功能(条目){
错误_string+=obj[entry]+'
';
如果(条目=='busno'){
$(“#busno”).html(obj[entry]);//其他人也是这样。
}
如果(条目=='Comp Id'){
$(“#compid”).html(obj[entry]);//其他人也是这样。
}
});
$('#stage_error').html(error_string);
以下是方法:注意,我在文本框后添加了带错误的跨距
CSS
<style>
.error { color:red; font-size:15px; }
</style>
请分享一些你迄今为止尝试过的相关html和脚本。让人感觉你有
html
属性为'required'的空输入@oscarvady:没有,我已经更新了问题。请找到它。向我们展示你的json,这样可以帮助你实际上我是从外部页面获取json,只有修改json才是方法?我可以做其他事情吗{$(“span.error”).text(“”);}如果它成功了条件?不要用单if make if(entry='busno'){}else if(entry='Comp Id')else添加这个else{//你在这里的部分}并使用$(“span.error”).html(“”);而不是你写的。对不起,即使我喜欢这样,我也要面对问题,嘿,它工作得很好,很抱歉反应太晚,但它工作得很好!!谢谢\我可以这样做吗??如果(!targetSelector){$(“span.error”).text(“”);},则需要查看从服务器收到的响应数据。我想你不明白我对你的问题的解决办法。我在这里解释:在done函数中,如果您看到这一行$(“span.error”).empty()//在此清除所有以前的错误消息。
,它将首先清除所有错误消息。然后,如果响应错误数据obj存在,它将处理$中的每个字段错误消息。每个(obj,函数(条目){…})代码>。在函数中,如果它发现字段id作为输入键,那么错误消息将添加到字段的下一个span标记中。我只添加了注释,代码没有更改,我很高兴您现在理解了,这对您有所帮助。是的,非常感谢。接受+1