【问题标题】:overwrite existing xml value through java script通过javascript覆盖现有的xml值
【发布时间】:2012-03-22 17:57:03
【问题描述】:

这是我的表单 .html 代码,所有值都通过 javascript 以 xml 格式写入

<form id='mrgv"+i+"'>
  <table class='propform'> 
    <tr><td colspan='2'><b>Visual Properties</b></td></tr>
    <tr><td>Name</td><td><input type='text' id='delimitDatanameVisual'></td></tr>
    <tr><td>Description</td>
        <td><input type='text' id='delimitDatadescVisual'></td></tr>
    <tr><td colspan='2'><b>Rule Engine Properties</b></td></tr>
    <tr><td>1. Id &nbsp;&nbsp;</td>
        <td> <input type='text' id='delimitDataidValue'/></td></tr>
    <tr><td>2. Phase No: &nbsp;</td>
        <td><input type='text' id='delimitDataphaseNo'/></td></tr>
    <tr><td>3. KeyFields:</td><td><input type='text' id='delimitDatafileurl' /></td>
        <td><select id='delimitDataabs'>
              <option value='abs'>abs</option>
              <option value='ph'>ph</option></tr>
    <tr><td>4. OPR Flag: &nbsp;</td>
        <td><select id='delimitDataencoding'> 
              <option value='Inner'>Inner</option>
              <option value='LeftOuter'>LeftOuter</option>
              <option value='Duplicate'>Duplicate</option>
              <option value='RightOuter'>RightOuter</option>
            </select></font></td></tr>
    <tr><td>5. OutFlag:</td>
        <td><input type='text' id='outmv' /></td>
        <td><select id='delimitDataabs'> 
              <option value='abs'>abs</option>
              <option value='ph'>ph</option>
    </tr>
  </table>

这是我的 javascript 将上面的表单值写入 xml

function mrgv(i)
{              
  var object = new ActiveXObject("Scripting.FileSystemObject");
  var file = object.OpenTextFile("D:\\vyas\\hello.grf",8,true,0);
  var mrgvform=document.getElementById("mrgv"+i);

  var idValue = mrgvform.delimitDataidValue.value;
  var phaseNo = mrgvform.delimitDataphaseNo.value;
  var keyfields=mrgvform.delimitDatafileurl.value;

  var oprflag =mrgvform.delimitDataencoding;
  var oprflagg = oprflag.options[oprflag.selectedIndex].text;

  var outflag =mrgvform.outmv.value;

  //file.WriteLine("<graph>");
  file.WriteLine("<Node" + " id=\"" + idValue +"\" "+ "" + "type=\"MERGE_V\" "+ " " + "Phase No=\""+ phaseNo +"\" "+ "  " + "keyfields=\"" + keyfields +"\" " + " " + "oprflag=\"" + oprflagg +"\" " + "" + "outflag=\"" + outflag +"\" " + " ></Node>" );

  //file.WriteLine("</graph>");
  file.Close();
}   

我的问题是:我想将所有值重定向到 xml。已经完成。如果再次从表单提交值而不是附加到下一行,但我想覆盖现有值上的值。

【问题讨论】:

  • 我注意到在您的表单 html 中您缺少某些选择和 td 的结束标记。您能否重新表述您的问题,因为我不清楚您的意思。
  • 它已经很好的代码只是自动换行

标签: javascript filewriter


【解决方案1】:

我认为您希望每次都用新值覆盖 XML 文件,而不是像日志文件一样附加到文件中。您正在使用追加方法写入文件,因此不会清除现有内容。

// you should delete the `D:\\vyas\\hello.grf` file here so it
// is re-created as an empty file on the next line
var file = object.OpenTextFile("D:\\vyas\\hello.grf",8,true,0);

【讨论】:

  • 是的,您现在完全明白了我的问题,请帮我解决这个问题。如何重写值。
猜你喜欢
  • 2014-01-03
  • 1970-01-01
  • 2020-09-13
  • 2023-02-07
  • 1970-01-01
  • 2018-08-29
  • 1970-01-01
  • 1970-01-01
  • 2013-08-02
相关资源
最近更新 更多