簡體   English   中英

動態添加文本框並通過函數分配其值

[英]Dynamically add textbox and assign it's value from a function

我想根據用戶輸入動態創建n個文本框。 每個文本框必須填充一個序列號。在這里,我到目前為止已經嘗試過了。

function generateSerial(sender,eventArgs){
        debugger;
        //var rw_Serail = stockin.rw_Serail;
        if(eventArgs.get_newValue()!="0"){
            if(eventArgs.get_newValue()!=eventArgs.get_oldValue()){
                create(eventArgs.get_newValue());
                //OpenWindow(null,null,"rw_Serial");
            }
        }
    }

Create將調用一個函數,其工作是創建文本框並分配一個值。

function create(param) {
        debugger;
        var s= "";
        for(var i = 0; i < param; i++) {
            s+= `<input type="text" style="width:72%" name="txtSerial" value=${generateLicense()}>`
                   `<button type="button" style="margin-left: 5px;height: 24px;">Change</button>`; //Create one textbox as HTML
        }
        document.getElementById("dvserialNo").innerHTML=s;
    }

顧名思義,generateLicense()將返回一個序列號。

function generateLicense() {
   return "abcd1234Etc..";
}

現在,在運行此代碼時,我收到此錯誤。

鍍鉻

未捕獲的TypeError:generateLicense(...)不是函數

在Firefox中

TypeError: (("<input type=\"text\" style=\"width:72%\" name=\"txtSerial\" value=" + (intermediate value)) + ">") is not a function

注意:我想同時創建和分配它的值。 在此處輸入圖片說明

連接s+的兩個元素。 並且,當然,作為建議的答案之一,包括對value="${generateLicense()}"引用

s+= `<input type="text" style="width:72%" name="txtSerial" value="${generateLicense()}">`
 + `<button type="button" style="margin-left: 5px;height: 24px;">Change</button>`; //Create one textbox as HTML

暫無
暫無

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

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