自动将文本插入表单?

时间:2012-01-06 03:19:10

标签: javascript html

我们有一个表格可以每天多次填写,并希望创建一些“模板”

表单非常简单。它有“主题”和“正文”的输入

我是否可以创建另一个网页,其上有按钮或链接,可自动将数据插入这些字段?例如;创建一个名为“防火墙更改”的按钮 - 单击该按钮将带您进入带有表单的页面,并使用“防火墙更改#”预先填充主题,并使用“blah blah blah”预先填充主体

4 个答案:

答案 0 :(得分:0)

<input type="text" id="someid" />

$("#someid").val("whatever you want to set it to")

完成jQuery,我希望你不介意。

您当然会将Javascript放入onclick处理程序(或$ .click())。

答案 1 :(得分:0)

您可以使用javascript来填充输入文本,textarea框,复选框,选择等的默认值,您也可以动态填充它们,例如使用PHP,或者您可以使用这两种方法。< / p>

以下是如何通过PHP&amp; amp;从服务器预填充数据的示例。 GET:

<input type="text" name="title" id="title" value="<?= $_GET['title']; ?>"/>

以下是如何通过PHP&amp; amp;从服务器预填充数据的示例。 POST:

<input type="text" name="title" id="title" value="<?= $_POST['title']; ?>"/>

或者,如果使用jQuery,对于相同的输入文本默认值:

jQuery(document).ready(function() { $("#title").val("<?= $_GET['title']; ?>"); }

从服务器填写表单可能更方便,因为您可以访问您可能希望在用户提交表单时测试表单的验证或类似数据库的数据。

答案 2 :(得分:0)

虽然制作一个单独的网页当然可以做到这一点,但听起来更像是你只是在寻找各种宏程序来帮助你自动填写表格。那里有很多软件(例如RoboFormLastPass,甚至只是每个网络浏览器的自动填充功能)

如果您正在寻找更多本土和可编程的东西,那么用户脚本听起来就像编写它一样简单。只需创建一个名为mytemplates.user.js的javascript文件并将其放入其中(解决方案包括从here窃取的jquery):

// ==UserScript==
// @name Name your script here
// @namespace http://doesnthavetobearealwebsite.com/
// @include http://sitewhereyoufillinformsdomain.com/*
// @author Your name here
// @description Script which fills out our forms!
// ==/UserScript==

// a function that loads jQuery and calls a callback function when jQuery has finished loading
function addJQuery(callback) {
  var script = document.createElement("script");
  script.setAttribute("src", "http://code.jquery.com/jquery.min.js");
  script.addEventListener('load', function() {
    var script = document.createElement("script");
    script.textContent = "(" + callback.toString() + ")();";
    document.body.appendChild(script);
  }, false);
  document.body.appendChild(script);
}

// the guts of this userscript
function main() {
  $('body').append($('<button>My Template</button>')).click(function(){
      $('[name*=firstName]').val('Initial Value');
      $('[name*=lastName]').val('Another template value');
  });
}

// load jQuery and execute the main function
addJQuery(main);

这会在页面底部添加一个按钮,点击后会使用上面的代码填写表单。

展开主要部分以包含所有表单元素。

在Chrome或Firefox中(使用GreaseMonkey扩展程序)只需按Ctrl + O打开“打开”对话框,然后打开该文件。系统会询问您是否要安装扩展程序。

对每个可查询的表单元素重复上面的每一行,你就可以了。如果您不了解jQuery或JavaScript,go learn it

答案 3 :(得分:0)

您不需要插入jQuery。仅使用

document.getElementById('elementinsert').value += 'text to insert';