用javascript附加一个json文件

appending a json file with javascript

本文关键字:一个 json 文件 javascript      更新时间:2024-03-05

我有一个现有的json文件(data.json),我想附加从表单捕获的信息。

我有一个输出json的表单,但我不知道如何将其添加到我现有的json文件中。

所以表单看起来是这样的:

<form id="test" action="#" method="post">
<div class="form-group">
    <label for="department">Department:</label>
    <input class="form-control" type="text" name="department" id="department" />
</div>
<div class="form-group">
  <label for="role">Role title:</label>
  <input class="form-control" type="text" name="role" id="role" />
</div>
<div class="form-group">
  <label for="pay_status">Pay status:</label>
  <input class="form-control" type="text" name="pay_status" id="pay_status"/>
</div>
<div class="form-group">
  <label for="typicalposts">Typical number of posts in a year:</label>
  <input class="form-control" type="text" name="typicalposts" id="typicalposts"/>
</div>
<div class="form-group">
    <label for="email">Restrictions:</label>
    <input class="form-control" type="text" name="restrictions" id="restrictions" />
</div>
<div class="form-group">
    <label for="recruitment_date">Recruitment date:</label>
    <input class="form-control" type="date" name="recruitment_date" id="recruitment_date" />
</div>
  <div class="form-group">
    <label for="weblink">Weblink:</label>
    <input class="form-control" type="text" name="weblink" id="weblink" />
</div>
<div class="text-center">
<p>
    <input type="submit" value="Send" class="btn btn-primary center_block" />
</p>
</div>
</form> 
<pre id="output" ></pre>

我必须将这些数据转换为json的js是:

(function() {
function toJSONString( form ) {
var obj = {};
var elements = form.querySelectorAll( "input, select, textarea" );
for( var i = 0; i < elements.length; ++i ) {
  var element = elements[i];
  var name = element.name;
  var value = element.value;
  if( name ) {
    obj[ name ] = value;
  }
}
return JSON.stringify( obj );
}
document.addEventListener( "DOMContentLoaded", function() {
var form = document.getElementById( "test" );
var output = document.getElementById( "output" );
form.addEventListener( "submit", function( e ) {
  e.preventDefault();
  var json = toJSONString( this );
  output.innerHTML = json;
}, false);
});
})();

这显示了#输出中的json,我希望这里显示的内容被附加到data.json,而不是

感谢您的帮助

我的文件托管在我无法访问的服务器上,这就是为什么我想通过js 来做这件事

所以BBC新闻在http://www.bbc.co.uk/news有一个HTML文档。如果我的浏览器可以编辑页面并将其保存回服务器,这是个好主意吗?

完全不可能随心所欲,因为这需要任何旧浏览器都可以在任何旧服务器上编辑任何旧文件。

为了更改服务器上的数据,你必须得到服务器的合作(你说你没有)。