如何将 html id 更改为变量 Laravel

Posted

技术标签:

【中文标题】如何将 html id 更改为变量 Laravel【英文标题】:How to change html id into variable Laravel 【发布时间】:2020-07-01 11:35:57 【问题描述】:

我有这段 html 代码行 <span id="mycount"></span> 显示来自数据库的实时数据(数字),所以假设它显示来自数据库的 5。我想做的是使用像this@if(5 > 0)这样的if语句。那么是否可以将id="mycount" 更改为变量或任何其他方式以便我可以使用 if 语句?

HTML

<span id="mycount"></span>  //This displays 5

我想要这样的东西

 @if(5 >0)
 //display data
 @else
 @endif

javascript

function getCount() 
$.ajax(
type: "GET",
url: 'route('live.review')',
success: function(data) 
    $('#mycount').html(data);
   setTimeout(getCount, 1000);

);


getCount();

【问题讨论】:

您已经向服务器发出 AJAX 请求以获取值,请将 if 条件放入其中。 怎么样? @RoryMcCrossan 【参考方案1】:

您可能不想使用刀片来处理这种情况,因为您在前端使用 ajax 来控制 DOM 的这个组件。我将在您的情况下使用的替代方法是:

const axios = require('axios');

async function getCount() 
 try 
   const data = axios.get('route('live.review')');
   const elCount = document.getElementById('#mycount');
   if (data > 0) 
     // const elText = document.createTextNode(data);
     // elCount.appendChild(elText);
     elCount.style.visibility = 'visible';
     elCount.innerHTML(data);
     return;
   
   elCount.style.visibility = 'hidden';
  catch (e) 
   window.console.error('Error! ', e.message);
 


setTimeout(getCount, 1000);

使用 Ajax

function getCount() 
  jQuery.ajax(
    type: 'GET',
    url: ' route("live.review") ',
    success: (data) => 
      const elCount = jQuery('#myCount');
      if (data > 5) 
        elCount.html(data);
        elCount.show();
        return;
      
      elCount.hide()
    ,
    error: (error) => 
      window.console.error('Error! ', error.message)
    ,
  );


setTimeout(getCount, 1000)

确定你的请求的回报总是好的,所以,为了保证,每次你提出请求时,把请求的结果拍个日志,只是为了保证window.console.log(data)(在开发环境中当然!)

【讨论】:

以上是关于如何将 html id 更改为变量 Laravel的主要内容,如果未能解决你的问题,请参考以下文章

将连接查询更改为 laravel

Laravel 5.2 auth 将 'id' 更改为 'customer_id'

Laravel “with” 将变量大小写更改为蛇形大小写

Laravel “with” 将变量大小写更改为蛇形大小写

在 Laravel Passport 中将用户模型主键 ID 更改为另一个

将公共目录更改为 public_html 后的 Laravel