簡體   English   中英

Ruby on Rails數據傳遞給javascript成為HTMLDIVELEMENT

[英]Ruby on rails data pass to javascript become HTMLDIVELEMENT

我正在嘗試將ruby檢索的數據庫值傳遞給javascript,以處理一些div顯示。

奇怪的是,當我傳遞數字(意味着我從數據庫中檢索數字並傳遞給js)時,它工作正常,如下所示,此load_web是一個簡短的整數。

if (<%= @device.load_web %>==0)
{ $('.somediv').find('input,textarea,select').attr('disabled',true); }
});

但是當我嘗試相同的方法,將字符串傳遞給js時,它將返回我HTMLDIVElement,這很奇怪。

if(<%= @device.brand%>=="apple")
    {
    alert("apple"); 
    }
    else
    {
    alert(<%= @device.brand %>);
    }

在我的數據庫中,該列的數據為“ apple”,但是邏輯陷入了else循環,並給了我一個“ object HTMLDIVElement”消息。

為什么會這樣呢?

編輯:我嘗試使用alert(<%= @ device.brand%>。innerHTML); 並得到以下消息: 在此處輸入圖片說明

請記住,erb標簽只是將其中的ruby代碼結果插入到html模板中。 因此,除非@device.brand返回返回格式正確的javascript(或數字),否則您可能希望將其包裝在字符串中。 嘗試這個:

if("<%= @device.brand%>"=="apple")
    {
    alert("apple"); 
    }
    else
    {
    alert("<%= @device.brand %>");
    }

暫無
暫無

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

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