JQuery - 在第 3 方表单上预填充表单字段

2024-02-11

我的网页上有一个 Netresults 表单,需要预先填充。该表单是使用 javascript 插入到页面中的,因此我无法在源代码中看到表单字段。

如果表单位于我的页面上,我将使用以下代码,但由于它不在我的页面上,我不知道如何定位这些字段。有人可以帮忙吗?

var keywords = getUrlParameter('keywords');

$('input[name=netres-keywords]').val(keywords);

使用以下代码插入网络结果表单:

(function() {
    var $__MAForm;
    ($__MAForm =function(){
        if(typeof($__MA)=="undefined"){
            return window.setTimeout($__MAForm,50);
        }else{
            $__MA.addMAForm("43788303-2b62-4774-ad0f-63542e3ed92a", "forms.example.com");
        }
    })();
})();

这可能需要使用突变观察者 https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver.

突变观察者将检查 DOM 的更改(添加的元素等),我们可以使用它来触发事件。下面的代码将更改名称输入的值netres-keywords任何时候新的<form>元素被添加到<body>.

在本文底部的 JSFiddle 示例中,我创建了一个按钮来模拟添加到页面的表单。如您所见,文本框将预先填充。

示例 JSFiddle https://jsfiddle.net/cqc9kq2t/3/

$(document).ready(function() {

    var keywords = "this is a test keyword";
    var formCount = $("form").length;

    var observer = new MutationObserver(function() {
        var newFormCount = $("form").length;
        if (newFormCount > formCount) {
            $('input[name=netres-keywords]').last().val(keywords);
        }
    });

    $("button").click(function() {
        $form = $("<form>").html("<h1>New form:</h1><input type='text' name='netres-keywords'>");
        $("body").append($form);
    });
    
    var observerConfig = {
        attributes: true, 
        childList: true, 
        characterData: true 
    };
    
    var targetNode = document.body;
    observer.observe(targetNode, observerConfig);
});
form {
    padding: 10px;
    border: 1px solid red;
    margin-bottom: 20px;
}

h1 {
    margin: 0;
    padding: 0;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button>
    SIMULATE ADDING FORM
</button>
<br>
<br>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JQuery - 在第 3 方表单上预填充表单字段 的相关文章

随机推荐

  • 使用clock_gettime()的正确方法是什么?

    我在 C 程序中尝试这个函数 它总是打印错误的时间 这是我目前的代码 include
  • MySQL 大圆路口(两条路交叉吗?)

    MySQL OpenGIS CROSSES 似乎不适合我 SET ls LineString 1 1 2 2 3 3 SET xx LineString 0 2 10 2 SELECT AsText EndPoint GeomFromTex
  • 使用C++对ipv6地址进行比较运算

    由于 IPV6 地址有 16 个字节 并且它们没有数据类型可以在 C 中存储它 我想存储 IPV6 地址 并在 IPv6 地址之间进行一些比较 请让我知道该怎么做 您可以将它们存储为普通数组unsigned char就像你在 C 中所做的那
  • 如何增加数据集的采样频率(重塑、插值?)并用均值填充 Nan 值

    我有一个样本频率不均匀的数据集 如该子集所示 time date x y id nn1 nn2 0 2019 09 17 08 43 06 234 236 4909 22 02271554554524 38 2099463490856 0
  • Visual Studio 中 Lambda 的模板变量错误?

    c 14 questions tagged c 2b 2b14提供变量模板 http en cppreference com w cpp language variable template哪个工作得很好视觉工作室2017 question
  • Google Sheets v4 更新效果 JSON 端点数据?于 2021 年 6 月 8 日关闭

    我读了这个article https developers google com sheets api v3关于 Google Sheet API v4 更新 我需要改变当前的代码结构吗 我在用简单的 JSON 数据 https sprea
  • Java中的LinkedListNode是什么

    请原谅我的无知 但我正在开始准备我的第一次技术面试 并在主题链接列表上遇到了这个问题和答案 问题 实现一种算法来删除单个链表中间的节点 并且只能访问该节点 public static boolean deleteNode LinkedLis
  • 使用 JavaScript 循环移动 Div

    是否可以使用 JavaScript 循环旋转 Div 我的 HTML 页面中有四个 DIV 我需要循环旋转这些 DIV 其实并不难 function moveDiv t mdiv t t 0 05 time var r 10 radius
  • srand(time(NULL)) 生成类似的结果[重复]

    这个问题在这里已经有答案了 我不明白为什么 srand 生成如此相似的随机数运行之间 我正在尝试运行以下代码 srand time NULL int x rand cout lt lt x lt lt endl 然而 我最终得到的不是一个适
  • JSF:将字符串添加到列表中

    我有一个 JSF 2 0 应用程序 它有一个保存字符串列表的 bean 我想添加字符串
  • 修饰类或参数意味着什么?

    装饰或向类或参数添加属性意味着什么 目的是什么以及我什么时候这样做 欢迎提供资源链接和直接答案 当您在 C 中添加装饰器时 就像向类 方法添加属性一样 它会附加一个属性 如果你编写单元测试你会遇到一个简单的装饰器TestMethod像那样
  • Google Cloud Run 内存限制是否适用于容器大小?

    对于云运行的内存使用情况 请参阅文档 https cloud google com run docs configuring memory limits https cloud google com run docs configuring
  • IronPython WPF 与 RevitPythonShell

    我根据我在 stackoverflow 上找到的代码片段编写了此脚本 但在运行时出现此错误 System InvalidOperationException 无法创建多个 同一 AppDomain 中的 System Windows App
  • 渲染传递局部变量的模板时出现问题

    我正在运行 Ruby on Rails 3 我想渲染一个模板 show html erb 传递局部变量 In RAILS ROOT views users show html erb I have Name Surname 我还有一个页面控
  • xna 中的大型多人游戏

    您对 xna 和大型多人游戏有何看法 例如服务器和 100 个客户端 有没有关于如何在 xna 中创建客户端服务器应用程序的好教程 当然有关于如何做到这一点的教程 我个人使用 Lidgren 作为我的在线原型 我只对 4 个人进行了测试 服
  • 在EF Core中,如何检查是否需要迁移?

    我在 Xamarin iOS 应用程序中使用 Entity Framework Core 在我的核心项目中 包含在 iOS 应用程序和其他应用程序之间共享的代码 netstandard 2 0 我想知道是否需要迁移 以便我也可以执行一些其他
  • 递归删除以

    我需要在 bat 文件中编写一个命令 递归删除以某个字符串开头的所有文件夹 我怎样才能做到这一点 这是您正在寻找的完整答案 FOR D R X IN certain string DO RD S Q X 显然你需要更换的地方certain
  • 如何在 Matlab fitglm 中获得 R 的零偏差和残差偏差等值?

    在 R 中 拟合 glm 后 您可以获得包含残差偏差和零偏差的摘要信息 这些信息告诉您您的模型与仅包含截距项的模型相比有多好 例如模型 model lt glm formula am mpg qsec data mtcars family
  • 如何编写 azure 函数来触发 azure devops 管道?这可能吗?

    我正在尝试设置一个可以触发 Azure DevOps 构建管道的 Azure 函数 但我不确定如何继续下去 以及是否有可能这样做 我已经有一个可供使用的构建管道 但无法使用 Azure DevOps 已提供的传统触发器 我不能透露原因 但我
  • JQuery - 在第 3 方表单上预填充表单字段

    我的网页上有一个 Netresults 表单 需要预先填充 该表单是使用 javascript 插入到页面中的 因此我无法在源代码中看到表单字段 如果表单位于我的页面上 我将使用以下代码 但由于它不在我的页面上 我不知道如何定位这些字段 有