簡體   English   中英

此代碼中是否缺少用於彈出物化數據的函數?

[英]Is there any missing functions in this code to pop-up the materialize data?

實體化彈出窗口不會出現。

$(document).ready(function() {
  $('#cdn_customer_id').on('click', function() {
    //alert("hi00");
    var countCust = '<?php count($customers) ?>';
    if (countCust < 1) {
      Materialize.toast('Add a Sales/Client Master', 3000, 'red rounded')
    }
  });
<select class="js-example-basic-single" name="cust_id" id="cdn_customer_id">
  <option value="">SELECT CLIENT</option>
  <?php foreach ($customers as $cus) { ?>
    <option value="<?php echo $cus->cust_id; ?>" <?php if(!empty($inv)){if($inv[0]->cust_id!=0){ echo ($inv[0]->cust_id==$cus->cust_id)?'selected':''; }} ?> >
    <?php echo strtoupper($cus->cust_name); ?>
  </option>
  <?php } ?>
</select>

嘗試以下

根據我所看到的,我會對您的代碼進行兩項更改,我不知道它是否會解決所有問題,但從您提供給我們的信息來看,這是我能想到的最好的方法。


首要問題:

您正在下拉列表中設置click偵聽器,當然您希望在有人選擇選項時觸發它,而不是在他們單擊選擇時觸發,我會更改以下行:

$('#cdn_customer_id').on('click', function() {

只需更改單詞click即可change偵聽器:

$('#cdn_customer_id').on('change', function() {

第二期:

我認為客戶數量設置不正確,您還沒有使用echo來輸出值,在 JavaScript 中放置 PHP 值不是最佳實踐,但是看到您已經完成了此操作,我可提供的信息有限更改它,我們將保持原樣,但實際上通過更改以下行來正確設置值:

var countCust = '<?php count($customers) ?>';

如果您使用的是PHP 5.4或更高版本,要使用簡寫版本回顯值,這應該不是問題:

var countCust = '<?=count($customers) ?>';

但是,如果由於某種原因您使用的是早期版本的 PHP,我不妨包含更長的版本:

var countCust = '<?php echo count($customers) ?>';

我想說的是,如果您進行這兩個更改,請查看是否有任何改進,然后將您的反饋反饋給我,並希望解決下一個問題(如果有的話)。

看起來這是一個materializecss特定問題。

你的標記看起來不對。 文檔使用此結構:

M.toast({html:'Add a Sales/Client Master'})

代碼筆在這里

所以吐司里面的一個對象。 不知道為什么要傳入其他樣式數據。

另一種方法是先聲明 html,然后將其傳入。從文檔中:

 var toastHTML = '<span>I am toast content</span><button class="btn-flat toast-action">Undo</button>';
  M.toast({html: toastHTML});

https://materializecss.com/toasts.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM