我有问题。我对面向对象的javascript没有多少经验。 我希望我的表单能够向我创建的对象提交第一和第二名称等详细信息
这是我的目标:
function Person(fname,sname){
this.fname=fname;
this.sname=sname;
this.confirm = function(){
alert('Thank you '+this.fname +'<br>'+ this.sname + ' Your email has been recieved');
}
function submit(){
person1= new Person(document.getElementById('fname').value, document.getElementById('sname').value);
person1.confirm();
}
和我的表格:
<input type="text" id="fname" value="First Name"/></br>
<input type="text" id="sname" value="Surname"/></br>
<input type="text" value="Email Address"/></br>
<input type="Submit" value="Submit" onSubmit="submit()"/>
如果有人可以帮助我开展这项工作,我将不胜感激。感谢。
答案 0 :(得分:1)
你需要new
作为构造函数,所以我想你会想要这样的东西
var person=new Person("John","Doe");
person.confirm();
但是,如果您不想使用new
,则可以执行此操作
function Person(fname,sname){
var wrapper={
fname:fname,
sname=sname,
confirm:function(){
alert('Thanks you '+this.fname +'<br>'+ this.sname + ' Your email has been recieved');
}
return wrapper
}
答案 1 :(得分:0)
要从表单中的数据创建事件处理程序中对象的实例,请使用如下语法:
<input type="Submit" value="Submit" onSubmit="var p = new Person(document.getElementById('fname').value, document.getElementById('sname').value);"/>
一旦你创建了对象,你自然不得不用它来做任何事情,例如调用p.confirm();
。
根据您的编辑将代码放入函数中:
function submit() {
var p = new Person(document.getElementById('fname').value, document.getElementById('sname').value);
p.confirm();
}
答案 2 :(得分:0)
new
关键字value
proeprties e.g。
var person = new Person(
document.getElementById('fname').value,
document.getElementById('sname').value
);
person.confirm();