簡體   English   中英

將值從javascript中的按鈕傳遞到創建localStorage變量的函數

[英]Passing a value from a button in javascript to a function that creates a localStorage variable

我有一個工作中的調查Web應用程序,用於從客戶那里收集數據。 我正在嘗試將十幾種不同的功能(每個選項一個)轉換為一個簡單的功能。 “投票”作為localStorage變量存儲,因此可以每天重新打開調查,而不會丟失數據。 這是我所擁有的:

<script>

function vote(choice)
{
   if (localStorage.choice)
   {
      localStorage.choice=Number(localStorage.choice)+1;
   }
   else
   {
      localStorage.choice=1;
   }
   alert("Thanks for your input!  Have a nice day");
}

</script>

然后,我的主體中的按鈕如下所示:

<li class="li" onClick="vote(a);">choice 1</li>
<li class="li" onClick="vote(b);">choice 2</li>
<li class="li" onClick="vote(c);">choice 3</li>

如果每個函數都有單獨的函數,則它們工作正常,將字母傳遞到新的localStorage變量中,我做錯了什么?

要動態使用對象的屬性,必須使用[]表示法

<script>

function vote(choice)
{
   if (localStorage[choice])
   {
      localStorage[choice]=Number(localStorage[choice])+1;
   }
   else
   {
      localStorage[choice]=1;
   }
   alert("Thanks for your input!  Have a nice day");
}

</script>

要將字母作為字符串傳遞,必須將它們引號

<li class="li" onClick="vote('a');">choice 1</li>
<li class="li" onClick="vote('b');">choice 2</li>
<li class="li" onClick="vote('c');">choice 3</li>

DEMO

abc是變量。 您應該使用字符串文字:

<li class="li" onClick="vote('a');">choice 1</li>
<li class="li" onClick="vote('b');">choice 2</li>
<li class="li" onClick="vote('c');">choice 3</li>

暫無
暫無

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

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