我一直坚持这个错误。我不知道该怎么做了。我尝试了一切。
错误开始于此:
$hm->lat=$slat[$i];
这是我的控制者:
$students = (array)$request->stud;
$locations = (array)$request->studlocation;
$slat=(array)$request->slat;
$slng=(array)$request->slng;
for ($i = 0; $i < count($students); $i++){
$hm = new HouseMate;
$hmid = rand();
$hm->hmid=$hmid;
$hm->rId_fk=$renterid;
$hm->person=$students[$i];
$hm->location=$locations[$i];
$hm->lat=$slat[$i];
$hm->lng=$slng[$i];
$hm->save();
}
这是我的观点:
$(document).ready(function() {
$("#dropdown").change(function() {
var selVal = $(this).val();
$("#textboxDiv").html('');
$("#schoolloc").html('');
if(selVal > 0) {
for(var i = 1; i<= selVal; i++) {
$("#textboxDiv").append('<input type="hidden"
value="student'+i+'" name="stud[]" />');
$("#schoolloc").append('<input type="text"
name="studlocation[]" id="studlocation'+i+'" />');
var input = document.getElementById('studlocation'+i+'');
var autocomplete = new google.maps.places.Autocomplete(input);
$("#slat").html('');
$("#slng").html('');
autocomplete.addListener('place_changed', function () {
var place = autocomplete.getPlace();
var lat = place.geometry.location.lat();
var lng = place.geometry.location.lng();
$("#slat").append('<input type="hidden" name="slat" value='+lat+' />');
$("#slng").append('<input type="hidden" name="slng" value='+lng + ' />');
});
}
}
});
});
答案 0 :(得分:0)
$slat[$i]
超出范围,这意味着您必须拥有一些students
没有给定位置。您需要确保只为具有位置的学生设置位置,并为每个学生设置正确的位置。如果这个答案不够,那么您需要添加有关students
及其位置的更多信息。