gpt4 book ai didi

javascript - 使用 Ajax 和 Laravel 进行实时名称可用性检查

转载 作者:行者123 更新时间:2023-11-27 23:58:24 26 4
gpt4 key购买 nike

我在从 name 列的 products 表中检查产品的实时名称时遇到问题。我需要帮助。我仅收到正在检查...消息,但没有收到确定或名称不可用消息。我的查询有问题吗

我的 Ajax

<SCRIPT type="text/javascript">
$(document).ready(function(){

$("#name").change(function() {

var usrN = $("#name").val();

if(usrN.length >= 4)
{
$("#status").html('<img src="images/loadingAnimation.gif"> Checking ...');

$.ajax({
type: "POST",
url :"{{action('Product\ProductController@Check')}}",
data: "name="+ usrN,
success: function(msg){

$("#status").ajaxComplete(function(event, request, settings){

if(msg == 'OK')
{
$("#name").removeClass('object_error');
$("#name").addClass("object_ok");
$(this).html('<img src="images/success.png" align="absmiddle"> OK<');
}
else
{
$("#name").removeClass('object_ok');
$("#name").addClass("object_error");
$(this).html(msg);
}

});

}

});

}
else
{
$("#status").html('<font color="red" style="margin-left:125px;">something went wrong <strong></strong> .</font>');
$("#name").removeClass('object_ok');
$("#name").addClass("object_error");
}

});

});


</SCRIPT>

我的 Controller

 public function Check(Request $request)
{

$product= new Product;
$name = $request->get('name');
$product->name = $request->get('name');


$query = \DB::table('products')->select('name')
->where('name','=',$name)
->first();
if($query)
{
echo"name not available!";
}
echo"name available!";
$product->save();

我的表格

<input type="text" name="name" id="name" style="margin-top:35px;" />
<span id="status"></span>

最佳答案

您正在客户端站点上检查以下内容:

if(msg == 'OK')

但是您从未从服务器发送该字符串,并且还使用 return 而不是 echo。以下内容可能会解决您的问题,但我仍然不会使用或推荐它:

// In your check method
if($query)
{
return 'error';
}

$product->save();

return 'ok'; // ok is lower case so use if(msg == 'ok')

不要使用echo。请阅读Laravel首先是文档,然后是 check this并了解如何使用 JSON 数据类型作为响应。

<小时/>

标记时始终使用准确的版本

关于javascript - 使用 Ajax 和 Laravel 进行实时名称可用性检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32062626/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com