"Please fill the required field" - 隐藏字段阻止了我的提交
"Please fill the required field" - Hidden field is blocking my submit
我有一个安装了 buddyboss 的 wordpress 页面。 Pagebuilder 是 Elementor pro。插件 Buddyboss 为您提供类似 Facebook 的功能。在buddy boss里面,评论posts &co是没问题的,但是如果我在buddyboss系统之外有一个post,我就没法提交评论了。必须填写一个隐藏字段才能提交我的评论。 Line of code
如果我放入一个通过 ID 定位该区域的脚本并尝试将其删除,它将无法工作。如果我手动删除它,我可以提交它。
你们有什么想法吗?
没有隐藏我的文本区域的 CSS 它看起来像这样:
<textarea
id="aad669143d1a2b175fb447cb79a28f4b"
aria-label="hp-comment"
aria-hidden="true"
name="comment"
autocomplete="new-password"
style=""
tabindex="-1"
class="error"
aria-describedby="aad669143d1a2b175fb447cb79a28f4b-error"
aria-invalid="true">
</textarea>
根据您在评论中发布的代码,事实证明,针对 aria-label
可能确实是您所需要的。要删除它,您可以按如下方式修改代码:
var element_to_remove = document.querySelector('[aria-label="hp-comment"]');
element_to_remove.remove();
第一行根据属性 aria-label
及其值 hp-comment
查找元素,第二行将其从 HTML 树中删除(这应该适用于所有现代浏览器; 或者,您可以尝试 parentNode
您概述的方式)。
您可以使用以下扩展代码片段进行尝试:
var element_to_remove = document.querySelector('[aria-label="hp-comment"]');
console.log(element_to_remove.id); // the id is logged
element_to_remove.remove(); // remove the element
element_to_remove = document.querySelector('[aria-label="hp-comment"]'); // nothing here
console.log(element_to_remove); // --> null is logged
<textarea id="aad669143d1a2b175fb447cb79a28f4b" aria-label="hp-comment" aria-hidden="true" name="comment" autocomplete="new-password" style="" tabindex="-1" class="error" aria-describedby="aad669143d1a2b175fb447cb79a28f4b-error" aria-invalid="true">
</textarea>
(当然,第2、4、5行只是为了演示,并不是必须的。)
我有一个安装了 buddyboss 的 wordpress 页面。 Pagebuilder 是 Elementor pro。插件 Buddyboss 为您提供类似 Facebook 的功能。在buddy boss里面,评论posts &co是没问题的,但是如果我在buddyboss系统之外有一个post,我就没法提交评论了。必须填写一个隐藏字段才能提交我的评论。 Line of code
如果我放入一个通过 ID 定位该区域的脚本并尝试将其删除,它将无法工作。如果我手动删除它,我可以提交它。 你们有什么想法吗?
没有隐藏我的文本区域的 CSS 它看起来像这样:
<textarea
id="aad669143d1a2b175fb447cb79a28f4b"
aria-label="hp-comment"
aria-hidden="true"
name="comment"
autocomplete="new-password"
style=""
tabindex="-1"
class="error"
aria-describedby="aad669143d1a2b175fb447cb79a28f4b-error"
aria-invalid="true">
</textarea>
根据您在评论中发布的代码,事实证明,针对 aria-label
可能确实是您所需要的。要删除它,您可以按如下方式修改代码:
var element_to_remove = document.querySelector('[aria-label="hp-comment"]');
element_to_remove.remove();
第一行根据属性 aria-label
及其值 hp-comment
查找元素,第二行将其从 HTML 树中删除(这应该适用于所有现代浏览器; 或者,您可以尝试 parentNode
您概述的方式)。
您可以使用以下扩展代码片段进行尝试:
var element_to_remove = document.querySelector('[aria-label="hp-comment"]');
console.log(element_to_remove.id); // the id is logged
element_to_remove.remove(); // remove the element
element_to_remove = document.querySelector('[aria-label="hp-comment"]'); // nothing here
console.log(element_to_remove); // --> null is logged
<textarea id="aad669143d1a2b175fb447cb79a28f4b" aria-label="hp-comment" aria-hidden="true" name="comment" autocomplete="new-password" style="" tabindex="-1" class="error" aria-describedby="aad669143d1a2b175fb447cb79a28f4b-error" aria-invalid="true">
</textarea>
(当然,第2、4、5行只是为了演示,并不是必须的。)