使用json对象预填充表单的值

时间:2013-01-29 10:45:46

标签: javascript jquery

我正在使用类似于{"expiry_year":"15","number":"411111","month":"12","cvn":"456"}

的JSON对象

现在在一些回调中,我得到了这个值。我的要求是通过使用MAP将这些值放在from中,以便将来如果某个更改DOM ID,它将不会影响页面。

为实现这一点,我正在尝试这样

var domWithValueMap = {
              "number" : "number",
              "cnv" : "cnv",
              "month" : "expiry_month",
              "expiry_year" : "expiry_year"
          }

以上哈希

var domWithValueMap = {
              "keys of json obg" : "id of DOM",

          }

依旧......

我的div id是:number,expiry_year,month和cvn。

然后在我尝试使用此

来匹配键是否存在
   domWithValueMap.hasOwnProperty(key);

在此之后,我对如何继续感到困惑。请帮助我实现这一目标。

1 个答案:

答案 0 :(得分:1)

这应该可以解决问题:

var values = {"expiry_year":"15","number":"411111","month":"12","cvn":"456"};
for(var key in values){
    document.getElementById(domWithValueMap[key]).value = values[key];
}

再多一点,发表评论:

var values = {"expiry_year":"15","number":"411111","month":"12","cvn":"456"};
for(var key in values){                       // Loop through your values,
    var id = domWithValueMap[key]             // Get the element ID from the value's key,
    var element = document.getElementById(id) // Get the element,
    element.value = values[key];              // Set teh value of the element.
}