如何通过 php 在页面中获得可见的 div 输入?

How to get visible div inputs in a page through php?

我一直在尝试获取可见 div 输入的名称,有两个可见的..! 但这对我来说越来越困难了..我用 javascript 找到了出路,但我真的想在 PHP 中做到这一点..!因为 div 的名称和输入在每次访问和重新加载页面时都会发生变化..!所以很难通过任何永久名称或 ID 来定位..!

这是我从 javascript 的用户那里得到的:

var isCandidateRegion=function(node){
return (node.innerText.indexOf('Username')>-1 && node.innerText.indexOf('Hours')>-1);
};
//Find the last table in th document that contains 'Username' and 'Hours'
var candidateRegions=[].filter.call(document.querySelectorAll('table'),isCandidateRegion);
var targetRegion=candidateRegions[candidateRegions.length-1];

var isVisible=function(node){
return (node.offsetWidth && node.offSetWidth >0) || (node.offsetHeight && node.offsetHeight>0);
};
var inputs=[].filter.call(targetRegion.querySelectorAll('input'),isVisible);
var usernameInput=inputs[0].name;
var hoursInput=inputs[1].name;

console.log(usernameInput,hoursInput);

所以我想要的是在 php 变量中获取名称,以便我现在可以在 php 中使用它。我可以在控制台中看到输入的名称,但我想要它存储在 PHP 变量中..!

因此,如果有任何方法请或使用 jQuery 或 Javascript 的替代方法,因为 PHP 会很棒..!

PHP 是一种服务器端语言,出于与我如何理解您的问题相关的所有意图和目的,它基本上仅用于提供和阅读 HTML 代码。除非你在 DOM 元素上实际写了一些东西,否则 PHP 无法知道它是否可见,因为它不能像 JavaScript 那样自动检测它的样式.

另一方面,

JavaScript 专为使用 DOM 页面元素和检测样式或操纵元素而设计。

为了让您的 PHP 看到哪些元素可见,您需要通过使用 [=43= 将其放入 HTML 来明确告诉 PHP 什么是可见的和不可见的](或jQuery)。这可以通过以下方式完成:

  • 在您的 div 上添加您想要让 PHP 知道的特定 class,例如<div class="visible"> ... </div><div class="hidden"> ... </div>.
  • 向您的元素添加数据属性,例如<div data-visibility="visible"> ... </div><div data-visibility="hidden"> ... </div>

在您的 PHP 中,在从页面读取信息的方法中,您可以遍历 DOM 并获取所有 div 具有适当的 class 或属性。