Php 简单HTML DOM帮助

Php 简单HTML DOM帮助,php,html,dom,simple-html-dom,Php,Html,Dom,Simple Html Dom,如何提取输入标记的value属性?使用简单HTML DOM 让我举个例子: <form action="#" method="post" name="test_form" id="test_form"> Name<input type="text" name="name" value="NaMe"/><br /> Address<input type="text" name="address" value="AdDrEsS"/><br /&

如何提取输入标记的value属性?使用简单HTML DOM 让我举个例子:

<form action="#" method="post" name="test_form" id="test_form">
Name<input type="text" name="name" value="NaMe"/><br />

Address<input type="text" name="address" value="AdDrEsS"/><br />

<input type="hidden" value="sayantest" />
</form>

名称
地址
我只想提取隐藏类型输入标记的值,而不是其他值。

您想将id(以便可以在javascript中访问该值)以及名称(如果您想访问服务器上的值)放在希望从中获取值的标记中

e、 g


那么您的javascript就简单到:

<script type="text/javascript">
  var val = document.getElementById('test').value;
  alert(val);
</script>

var val=document.getElementById('test')。值;
警报(val);

如前所述,最简单的方法是为隐藏的输入提供一个
id
属性,然后使用
getElementById
,然后使用
.value
.getAttribute('value')
来选择它

或者,如果您想获取页面上所有隐藏输入的值,或者无法插入您的ID,您可以使用以下方法:

var inputs = document.getElementsByTagName('input');
for(var i = 0; i < inputs.length; i++){
    if(inputs[i].getAttribute('type') == 'hidden'){
        alert(inputs[i].getAttribute('value'));
    }
}
var inputs=document.getElementsByTagName('input');
对于(变量i=0;i
使用简单的HTMLDOM

你是说那个名字的PHP库吗

如果是这样,您必须选择一种识别输入的方法。如果无法更改标记以在所需的隐藏输入上添加
id
name
,则必须提出类似于“获取表单中隐藏类型的第一个输入”:

$html= new simple_html_dom();
$html->load('<html><body<form action="#" method="post" name="test_form" id="test_form">Name<input type="text" name="name" value="NaMe"/><br />Address<input type="text" name="address" value="AdDrEsS"/><br /><input type="hidden" value="sayantest" /></form></body></html>');

$input= $html->find('#test_form input[type=hidden]', 0);
$input->value;
$html=new simple_html_dom();

$html->load(“以下是我的想法…使用的正是您在初始问题中显示的内容。请注意,我所做的只是
echo
隐藏所有输入的值,其中
test_form.htm
是您的原始值:

<?php
function scraping_form()
{
   // create HTML DOM
   $html = file_get_html('test_form.htm');

   // get input hidden value
   $aObj = $html->find('input[type="hidden"]');
   foreach ($aObj as $hKey=>$hidden)
   {
     $valueAttribute = $hidden->value;
     echo "*TEST* ".$hKey.": ".$valueAttribute."<br />";
   }

   // clean up memory
   $html->clear();
   unset($html);

   return;
}
// -----------------------------------------------------------------------------
// test it!
// user_agent header...
ini_set('user_agent', 'My-Application/2.5');
scraping_form();
?>

<代码>你用什么语言来访问DOM?JavaScript?你在说这个PHP库吗?戴维:是的,加标签+ 1。你也可以考虑使用jQuery库并使用它访问你的元素。如果你使用jQuery,你的代码可能看起来像这样的$('ytest test))。
<?php
function scraping_form()
{
   // create HTML DOM
   $html = file_get_html('test_form.htm');

   // get input hidden value
   $aObj = $html->find('input[type="hidden"]');
   foreach ($aObj as $hKey=>$hidden)
   {
     $valueAttribute = $hidden->value;
     echo "*TEST* ".$hKey.": ".$valueAttribute."<br />";
   }

   // clean up memory
   $html->clear();
   unset($html);

   return;
}
// -----------------------------------------------------------------------------
// test it!
// user_agent header...
ini_set('user_agent', 'My-Application/2.5');
scraping_form();
?>