我得到了一個HTML表格,看起來像這樣:PhpQuery問題與VAL()改變值
<table id="xp">
<tbody >
<tr>
<td>
<input type="text" data-type="string" value="testvalue" class="text">
</td>
<td>
<input type="text" data-type="string" value="" class="text">
</td>
</tr>
</tbody>
</table>
現在我想用phpQuery改變輸入的值,像這樣:
require('**********/phpQuery.php');
$newsURL = "http://***********/index.php";
$newspage = file_get_contents($newsURL);
if($newspage)
{
$pq = phpQuery::newDocument($newspage);
foreach(pq('.text') as $stuffs)
{
$stuffs->val('ompalompa');
$this->assertEquals("ompalompa", $stuffs->val());
}
}
上午我使用PHPUnit的斷言看到的結果,但我剛剛得到這個錯誤:當我使用VAL()方法來獲得
//Call to undefined method DOMElement::val()
的值從所述第一類元件壽這樣的:
$stuffs = pq('.text')->val();
$this->assertEquals("testvalue", $stuffs);
它工作正常和所述斷言被傳遞
Time: 8 seconds, Memory: 3.25Mb
OK (1 test, 1 assertion)
正如我沒有參數被緊接在讀取的從phpQuery手冊VAL()理解對於具有選擇選擇器的第一個元素的值和具有值的val()將使用選定的選擇器設置每個元素的值,如下所示。任何人都可以向我解釋,如果我誤解了文檔或者代碼中的其他內容被破壞,問題是什麼。
- val()獲取第一個匹配元素的value屬性的內容。
- val($ val)設置每個匹配元素的值屬性。
不是我不THIK如此,$ PQ varialble和PQ方法是不一樣的,在$ PQ變量只是存儲它可以被命名爲任何文件,可能將其命名爲$ pq有點混亂。 – user1593846
Okey所以這是foreach的一些問題,因爲我可以用id來更改1項的值,所以它必須是一個問題,如何在foreach中返回對象,有什麼想法? – user1593846
剛剛打印出foreach後的$ stuffs結果,這是結果http://pastebin.com/qr7C73s0 – user1593846