簡體   English   中英

如何將日期/文本傳遞給<input type="date"> ?

[英]How can I pass date/text to <input type="date">?

我正在嘗試在輸入日期中設置文本,但沒有顯示任何內容。 數據類型有問題嗎?

<!DOCTYPE html>
<html>
<body>

<table>
    <tr>
        <td id="invoice">
        2020-09-22
        </td>
    </tr>
</table>    

<select id="decisionList">
  <option></option>
  <option>Payment date</option>
</select>

<div id="choice">
</div>



<script>

document.addEventListener("change", function () {

  var decisionList = document.getElementById("decisionList");
  var selectedOptionIndex = decisionList.options[decisionList.selectedIndex].index;  
  
  var invoiceDate = document.getElementById("invoice");
  var invoiceDateText = invoiceDate.textContent;
  
  var finalChoice = document.getElementById("choice");

  switch(selectedOptionIndex) {
    
    case 0:
        finalChoice.innerHTML='<input type="date">'
    break;
   
    case 1:
        finalChoice.innerHTML='<input type="date" value="' + invoiceDateText + '">' //here is a problem
    break;

    default:
    
    finalChoice.innerHTML=''
    
  }
  
})

</script>

</body>
</html>

我還嘗試根據我傳遞的文本創建新日期:

  var newDate = new Date(invoiceDateText);

但也不起作用。 如您所見,我正在通過 2020-09-22(來自 td)那么問題出在哪里?

變量 invoiceDateText 包含空格,因此無法正確解析。

您可以將該部分更新為以下內容。

 var invoiceDateText = invoiceDate.textContent.trim();

日期應該是一個字符串,格式為YYYY-MM-DD

暫無
暫無

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

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