iT邦幫忙

0

請問大大 為什麼我有讀到input的值 卻跑不出來

程式碼

謝謝

2 個回答

9
通靈亡
iT邦新手 2 級 ‧ 2020-05-27 23:46:21
最佳解答

好簡潔乾脆的問法,直接附結果省去了通靈時間

你原本的程式碼,吐出來的會是字串{inputvalue},而非inputvalue這個變數的值

//新增代辦事項
$(".todolist").append(
    '<div class="todos"> <input type="checkbox"> <p>{inputvalue}</p> <button class="delete">刪除</button>  </div>'
);

改用+號,將html字串和inputvalue接在一起,就可以了:

//新增代辦事項
$(".todolist").append(
    '<div class="todos"> <input type="checkbox"> <p>' + inputvalue + '</p> <button class="delete">刪除</button>  </div>'
);

ES6的Template literals

如果你不想用+號的方式,想要直接把變數跟字串寫在一起
可以用ES6的Template literals,不過版本較舊的瀏覽器並不支援

`字串跟變數: ${變數} 混在一起` // 左右是`不是單引號'

用Template literals的寫法修改後如下:

//新增代辦事項
$(".todolist").append(
    `<div class="todos"> <input type="checkbox"> <p>${inputvalue}</p> <button class="delete">刪除</button>  </div>`
);
0
Billour
iT邦新手 5 級 ‧ 2020-05-28 14:30:39

** 你原始的寫法是** '<div class="todos"> <input type="checkbox"> <p>{inputvalue}</p> <button class="delete">刪除</button> </div>'

我把它改為 **字串相加**

<p>' + inputvalue + '</p>
------------------------------

** input的值 就跑出來了。**
-------------------------------

  1. 我修改後的整段程式碼
 var inputvalue = $("#input").val();   //該.val()方法主要用於獲得形式元素如的值input,select和textarea。在空集上
            alert(inputvalue);                    //調用時,它返回undefined。

            //新增代辦事項
            $(".todolist").append(
                '<div class="todos"> <input type="checkbox"> <p>'+ inputvalue + '</p> <button class="delete">刪除</button>  </div>'

關於我
www.okna.tw

我要發表回答

立即登入回答