直到现在3个小时,我想知道这个,但现在运气好了。
我有一个页面,它的内容由几个html表组成,每个表都有一定的td
它看起来像这样
<td style="padding:0px 0px 0px 5px;" valign="middle"><span class="lshevent">team a - team b </span></td>
当有人点击此Td时,我希望将此td设为超链接。在新窗口中打开整个表格。
我的页面源从远程页面通过文件获取内容进行检索,如下所示
<?php
//Get the url
$url = "http://remotesite/pages/page1.html";
$html = file_get_contents($url);
$doc = new DOMDocument(); // create DOMDocument
libxml_use_internal_errors(true);
$doc->loadHTML($html); // load HTML you can add $html
$elements = $doc->getElementsByTagName('tbody');
$toRemove = array();
// gather a list of tbodys to remove
foreach($elements as $el)
if((strpos($el->nodeValue, 'desktop') !== false) && !in_array($el->parentNode, $toRemove, true))
$toRemove[] = $el->parentNode;
foreach($elements as $el)
if((strpos($el->nodeValue, 'Recommended') !== false) && !in_array($el->parentNode, $toRemove, true))
$toRemove[] = $el->parentNode;
// remove them
foreach($toRemove as $tbody)
$tbody->parentNode->removeChild($tbody);
echo str_replace('</h3><table','<table',$doc->saveHTML());
?>
答案 0 :(得分:0)
尝试使用onclick="openInNewWindow();"
并在该函数中使用您的代码调用ajax,也可能只是将ID放在$('#<your_id>').click(function(){});
上,当ajax返回成功时{{1} }
window.open();
或html -> <td id="open">
<td onclick="openWindow();">
js:
或
$(function(){
$('#open').click(function(){
$.ajax({
type : 'POST',
data: {},
dataType : 'html',
url : '/remotesite/getSite', //here goes the link to your php function(if you are using MVC logic then it will look like this)
success: function(data){
myWindow=window.open('','','width=200,height=100');
myWindow.document.write(data);
}
});
});
});
并在php中创建一个控制器(这取决于你的网页上是否有MVC逻辑,如果不是你正在使用的文件的实际路径)
function openWindow(){
//copy the $.ajax function from above here
}
EDITED: 对不起,我没有在
之前发布代码