作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的网页上有一个需要预填充的 Netresults 表单。表单是使用 javascript 插入到页面中的,因此我无法在源代码中看到表单字段。
如果表单在我的页面上,我会使用下面的代码,但事实并非如此,我不知道如何定位这些字段。谁能帮忙?
var keywords = getUrlParameter('keywords');
$('input[name=netres-keywords]').val(keywords);
使用以下代码插入 netresults 表单:
(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");
}
})();
})();
最佳答案
这可能需要使用 Mutation Observer .
突变观察器将检查 DOM 的变化(添加的元素等),我们可以使用它来触发事件。下面的代码将更改名称为 netres-keywords
的输入的值。任何时候新的 <form>
元素添加到 <body>
.
在这篇文章底部的示例 JSFiddle 中,我创建了一个按钮来模拟添加到页面的表单。如您所见,文本框将预填充。
$(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>
关于javascript - JQuery - 在第 3 方表单上预填充表单字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41826086/
我尝试通过正则表达式将文本中的单引号更改为双引号。 (单字)示例:我走了。 You gona fly to planet 'Ziqtos' => 我需要在 I'm 中保留单引号,并在 You gona
我正在构建一个 API,其中大部分将包含 JSON 和 HTML 内容。但是一些非常具体的端点只呈现 true 或 false,并且还在 POST 中接受 true 或 false。这是请求或响应的整
我是一名优秀的程序员,十分优秀!