我想了解JavaScript中的用戶定義對象。具體來說,我試圖創建一個用戶定義的對象的方法,該對象將使用document.getElementById("holder")
並使用document.createElement('p')
附加到該對象,並向其添加一個帶有document.createTextNode("text")
的文本節點。用戶定義的JavaScript對象的方法(原型)是否可以使用document.createElement?
目前,我的方法沒有這樣做。我已經測試過這個方法,它正在調用,但沒有任何內容出現在item.appendChild(otheritem)
的頁面中。我瀏覽過其他文章,但沒有解釋我的情況,至少我知道。我的代碼如下。
<html>
<head>
<title></title>
<script type="text/javascript">
function Person(fn, ln) {
this.fname = fn;
this.lname = ln;
}
Person.prototype.getFullName = function() {
var myPara = document.createElement('p');
var strFullName = document.createTextNode("super");
myPara.appendChild(strFullName);
var objHolder = document.getElementById("objHolder");
objHolder.appendChild(myPara);
};
function getSome() {
var fN = document.getElementById("fname").value;
var lN = document.getElementById("lname").value;
var Myperson = new Person(fN, lN);
alert(Myperson.fname);
Myperson.getFullName();
}
</script>
</head>
<body>
<form id="holder">First Name:
<input id="fname" type="text" width="40" />Last Name:
<input id="lname" type="text" width="40" />
<button id="buildObj" value="Click" onClick="getSome()">Click</button>
</form>
<div id="objHolder"></div>
</body>
</html>
任何幫助或建議,將不勝感激。此外,如果我錯過了一個關鍵概念,知道這也會很好。
謝謝, 邁克
爲什麼當它不返回任何東西並且有副作用時被命名爲getFullName?您應該將其重命名爲適當的內容createNameElem –
要回答您的標題問題:是的,當然可以。爲什麼不應該呢? – Bergi