簡體   English   中英

嘗試從標簽獲取數據時獲取未定義的值

[英]Getting an undefined value when I try to get data from a label

我有一個標簽,嘗試在其中獲取變量中的數據。 當我嘗試使用此方法時,由於類型和值undefined ,因此會出現錯誤。

這是我的HTML代碼:

<div class="input-group date" input-type="date" id="startDate">
    @Html.EditorFor(model => model.startDate, new { htmlAttributes = new { @class = "form-control" } })


document.getElementById('description').onchange = function () {
    var startDate = document.getElementById('startDate').value;
    var endDate = document.getElementById('endDate').value;
    var startDate_ms = startDate.getTime();
    var endDate_ms = endDate.getTime();
    var oneDay = 24 * 60 * 60 * 1000; // hours*minutes*seconds*milliseconds
    var diff = Math.round(Math.abs((endDate_ms - startDate_ms) / (oneDay)));
    document.getElementById('description').value = diff.value;
}

假設您的頁面上有一個id ='description'的標簽,則您實際上不能在標簽上使用onchange事件。 看一下文檔

當用戶提交對元素的值的更改時,將為輸入,選擇和textarea元素觸發change事件。 與輸入事件不同,不一定會為元素值的每次更改觸發change事件。

即使您可以在標簽上放置輸入,您也將無法使用change事件,因為更改必須由用戶而不是您的代碼進行。

當用戶提交對元素值的更改時。

因此,我建議您是否使用JQuery來了解一下trigger() ,這是JSFiddle

<button>Change Label</button>
<label id="description"> some value here </label>

$("button").on('click',function(){
     $("#description").text("Value changed").trigger("lblChanged");
});
$("#description").on('lblChanged', function(){
    console.log($("#description").text());
    // Write your code here
});

如果您使用的是香草Javascript,請在此處查看

暫無
暫無

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

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