如何将对象传递给JavaScript中的变量?

时间:2017-07-05 08:10:44

标签: javascript jquery

我有一个HTML表单,其中有一个字段,其ID属性为字段1,其中取值并分配给变量Field1,然后将其输入var模板。

我创建了一个新的日期对象并将其分配给var creationTime,我还需要将它传递给var模板。我怎样才能做到这一点?下面的代码不起作用......

$(function () {
$('#DownloadButton').click(update);
});

var creationTime = new Date();

var template = [
'<Field1><?Field1?></Field1>',
'<creationtime><?creationTime?></creationTime>',

 ].join('\r\n');

function update() {
  var variables = {

'Field1': $('#Field1').val(),
};

 var newXml = template.replace(/<\?(\w+)\?>/g,
function(match, name) {
  return variables[name];
    });

1 个答案:

答案 0 :(得分:1)

您需要将creationTime放在替换函数查找的variables对象中。

&#13;
&#13;
$(function () {
$('#DownloadButton').click(function() {
    console.log(update())
  });
});

var template = [
'<Field1><?Field1?></Field1>',
'<creationtime><?creationTime?></creationTime>',

 ].join('\r\n');

function update() {
  var variables = {
    'Field1': $('#Field1').val(),
    creationTime: new Date
  };

 return template.replace(/<\?(\w+)\?>/g, function(match, name) { return variables[name];});
}

console.log(update())
    
 
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="Field1">
<button id="DownloadButton">DownloadButton</button>
&#13;
&#13;
&#13;