对象构造函数具有创建输入的方法

时间:2015-12-15 20:15:15

标签: javascript

这是demo:

http://jsfiddle.net/b772ubch/e

正如你所看到的,我有四个输入,当我把值放在控制台中时,我可以检查卡路里的数量(calcCalories();)。

cut

我想做什么? 我想向对象构造函数添加一个方法,它在添加新产品期间自动将文本输入添加到正文部分,并且此输入必须是先前输入的一个siblling。任何的想法?

1 个答案:

答案 0 :(得分:0)

您应该为输入创建标签字段。我所做的是更新您的createInput功能以接受产品名称。然后它处理创建标签,输入和br的所有工作。它填充了标签的innerHTML。你走在正确的轨道上。 http://jsfiddle.net/b772ubch/4/

JS

function createInput(name) {
  var input = document.createElement("input");
  var br = document.createElement("br");
  var newlabel = document.createElement("Label");


  input.type = "text";
  input.className = "css-class-name";
  input.setAttribute("id", name);

  newlabel.setAttribute("for", name);
  newlabel.innerHTML = "Amount of " + name + " [g]: ";

  container.appendChild(newlabel);
  container.appendChild(input);
  container.appendChild(br);
  return input;
}

// Constructor //

function Product(name, calories, protein, fat, carbohydrates) {
  this.name = name;
  this.calories = calories;
  this.protein = protein;
  this.fat = fat;
  this.carbohydrates = carbohydrates;

  createInput(this.name);

}