2017-02-21 62 views
-1

如何在JavaScript /類型腳本文件中獲取MVC視圖中隱藏輸入的值?請不要使用jQuery。如何在Javascript中使用MVC視圖獲取隱藏值

這是我輸入:

<input type="hidden" value="@Model.GridHeader" name="gridheader" id="gridheader" /> 
<input type="hidden" value="@Model.GridData" name="griddata" id="griddata" /> 

我嘗試了這些,但不處於工作狀態,他們都返回空值。

window.onload = function() { 
var gridheader = document.getElementById("gridheader").innerHTML; 
var griddata = document.getElementById("griddata").innerHTML; 
alert(gridheader); 

我已經嘗試過innerTexttextContent

+1

交換'.innerHTML'爲'.value'輸入有值,而不是內部內容/ HTML。 – NewToJS

回答

0

一個input元素不具有innerHTML屬性,但具有value屬性。所以改變你的代碼如下:

window.onload = function() { 
    var gridheader = (<HTMLInputElement>document.getElementById("gridheader")).value; 
    var griddata = (<HTMLInputElement>document.getElementById("griddata")).value; 
    alert(gridheader); 
} 

它會工作。

您可以閱讀更多關於此here

'HTMLElement'類型中不存在屬性'值'它給了我 這個,也許是因爲它是TypeScirpt?

上面我在前面加上了document.getElemementById(...)。我沒有意識到這一點,因爲我沒有使用TypeScript的經驗。我找到了解決方案here

+0

@fubbe'

+0

類型'HTMLElement'上不存在屬性'值'它給了我這個,也許是因爲它是TypeScirpt? – Alma

+1

請參閱我的更新。我在這裏找到了解決方案http://stackoverflow.com/questions/12989741/the-property-value-does-not-exist-on-value-of-type-htmlelement所以,如果這將工作,請做出upvote也在這個鏈接:)讓我知道,爲了upvote它:) – Christos

0

得到與工作:

var inputValue = (<HTMLInputElement>document.getElementById('gridheader')).value; 
相關問題