Javascript 如何使用jquery ajax存储数据?

Javascript 如何使用jquery ajax存储数据?,javascript,php,jquery,ajax,laravel,Javascript,Php,Jquery,Ajax,Laravel,我使用这个jquery代码来使用ajax存储数据,但是如果我使用 let loc = $('[name="ot_location"]').val(position.coords.latitude+','+position.coords.longitude); 控制台上显示ReferenceError:loc未定义我是javascript新手,正在学习,需要帮助 html 控制器 public function visitclear(Request $request)

我使用这个jquery代码来使用ajax存储数据,但是如果我使用

let loc = $('[name="ot_location"]').val(position.coords.latitude+','+position.coords.longitude);
控制台上显示
ReferenceError:loc未定义
我是javascript新手,正在学习,需要帮助

html

控制器

public function visitclear(Request $request)
    
    {
        $customer = Customer::findOrFail($request->user_id);
        $customer->visit_clear = $request->visit_clear;
        $customer->ot_location = $request->ot_location;
        $customer->visit_date = date('Y-m-d H:i');
        $customer->save();
        return response()->json(['message' => 'User status updated successfully.']);
    }

我想单击复选框将地理记录存储在var loc中,并使用ajax存储它我如何做到这一点?

使用
var
代替
在代码中存储
loc
,然后查看引用错误是否消失。 因此,您的
让loc=$('[name=“ot_location”]').val(position.coords.latitude+,'+position.coords.longitude)
应该是

var loc=$('[name=“ot_location”]').val(position.coords.latitude+,'+position.coords.longitude)

使用
var
代替
进入
loc
的代码,查看参考错误是否消失。 因此,您的
让loc=$('[name=“ot_location”]').val(position.coords.latitude+,'+position.coords.longitude)
应该是

var loc=$('[name=“ot_location”]').val(position.coords.latitude+,'+position.coords.longitude)

在函数外部声明
loc
,这样它就可以在全局范围内使用,并查看是否有效。我尝试了,但它没有在该行中存储值,您只是在为输入字段赋值。为什么不干脆执行
loc=position.coords.latitude+”,“+position.coords.longitude
首先,我试图在输入字段上显示位置,然后通过var loc=document.getElementById(“otlocation”).value获取它;把它放到ajax上,但不起作用。在你的函数之外,你可以使用Delare
loc
,这样它就可以在全球范围内使用,看看是否有效。我试过了,但它没有把值存储在那一行,你只是给你的输入字段赋值。你为什么不干脆做一下
loc=position.coords.latitude+',“+position.coords.longitude
首先,我试图在输入字段上显示位置,然后通过var loc=document.getElementById(“otlocation”).value获取它;paas支持ajax,但不起作用
    $(document).ready(function(){
    $(document).on('change', '.js-switch2', function () {
        let visit_clear = $(this).prop('checked') === true ? 1 : 0;
        if ($(this).prop('checked') == 1) {
       $(this).closest('tr').addClass('visitclear');
      //ot get location
       function getLocation() {
      if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(showPosition);
      } else {
        alert("Try any other browser");
      }
    }
    function showPosition(position) {
      let loc = $('[name="ot_location"]').val(position.coords.latitude+','+position.coords.longitude);
    }
    $(document).ready(getLocation);
        } else {
           $(this).closest('tr').removeClass('visitclear'); 
        }
        let userId = $(this).data('id');
         
        $.ajax({
            type: "GET",
            dataType: "json",
            url: '{{ route('users.update.visit_clear') }}',
            data: {'visit_clear': visit_clear, 'user_id': userId , 'ot_location': loc},
            success: function (data) {
            console.log(data.message);
            }
        });
    });
});
public function visitclear(Request $request)
    
    {
        $customer = Customer::findOrFail($request->user_id);
        $customer->visit_clear = $request->visit_clear;
        $customer->ot_location = $request->ot_location;
        $customer->visit_date = date('Y-m-d H:i');
        $customer->save();
        return response()->json(['message' => 'User status updated successfully.']);
    }