English 中文(简体)
没有图像,没有弹出窗口。
原标题:
  • 时间:2008-12-03 12:18:23
  •  标签:

我有一个 Ajax 应用程序,无法显示图像,也无法从存储在文件中的 HTML 创建弹出窗口。

这是我用于弹出窗口的代码:

echo  <script> 
function makewindows(){
child1 = window.open ("about:blank");
child1.document.write(  . json_encode($row2["ARTICLE_DESC"]) .  );
child1.document.close(); 
}
</script> ;

和相应的HTML

<script> 
function makewindows(){
child1 = window.open ("about:blank");
child1.document.write("<!-- +++++++++++++++++++++++++ Bitte u00e4ndern Sie im eigenen Interesse nichts an diesem Code! ++++++++++++++++++++++++ -->
<!-- +++++++++++++++++++++++++ Das kann massive Fehldarstellungen ihrer Auktion zur Folge haben! +++++++++++++++++++ -->
<!-- +++++++++++++++++++++++++ ++++++++++++++++++++++++++ Ihr Supreme Team +++++++++++++++++++++++++++++++++++++++++ -->
");
child1.document.close(); 
}
</script><br />
<b>Notice</b>:  Undefined index:  CATEGORY in <b>C:ProgrammeEasyPHP 2.0b1wwwget_auction.php</b> on line <b>39</b><br />
<div id= leftlayer >
    <strong>Article Number</strong> 220288560247
    <p><strong>Article Name</strong></p> Ed Hardy Herren Shirt Rock & Roll Weiss XXL Neu & OVP
    <p><strong>Subtitle</strong></p> 
    <p><strong>Username</strong></p> fashionticker1
    <p><strong>Total Selling</strong></p> 1
    <p><strong>Total Sold</strong></p> 0
    <p><strong>Category</strong></p> 
    <p><strong>Highest Bidder</strong></p> 0
  </div>
<div class= leftlayer2 >
  <strong>Current Bid</strong> 0.00
  <p><strong>Start Price</strong></p> 49.00
  <p><strong>Buyitnow Price</strong></p> 59.00
  <p><strong>Bid Count</strong></p> 0
  <p><strong>Start Date</strong></p> 1.10.2008 16:22:09
  <p><strong>End Date</strong></p> 6.10.2008 16:22:09
  <p><strong>Original End</strong></p> 6.10.2008 16:22:09
  <p><strong>Auction Type</strong></p> 1
</div>
<div class= leftlayer2 >
    <strong>Private Auction</strong></p> 0
  <p><strong>Paypal Accepted</strong></p> 0
  <p><strong>Auction Watched</strong></p> 0
  <p><strong>Finished</strong></p> 1
  <p><strong>Country</strong></p> 
<br>
<br>
<style ty
  <p><strong>Location</strong></p> float: right;

  <p><strong>Conditions</strong></p> margin: 0px;

</div>
<div class= leftlayer2 >
  <strong>Auction Revised</strong></p> 0
  <p><strong>Cancelled</strong></p> 0
  <p><strong>Shipping to</strong></p> padding:5px; 

  <p><strong>Fee Insertion</strong></p> 0.00
  <p><strong>Fee Final</strong></p> 0.00
  <p><strong>Fee Listing</strong></p> 0.00
  <p><a href= #  onclick= makewindows(); return false; >Click for full description </a></p>
</div><div id= rightlayer >Picture Picture
<img src=http://storage.supremeauction.com/flash/ebay2/10/49/76/10497654/13895964e.jpg>
</div>

img src是有效的位置并且在浏览器中可以正常打开,但是无法在页面中显示。我收到了一个脚本错误,没有说明任何细节。

在单独调用文件时,由生成的HTML文件生成的链接会创建一个弹出窗口,但源代码显示窗口未被分配任何内容。

child1.document.write("");

我修改了img src行:

<img src= ".$lastImg." >

这将导致html返回:

<img src=  >
最佳回答

您的HTML代码看起来不合法 - 您有:

<style ty
  <p><strong>Location</strong></p> float: right;

  <p><strong>Conditions</strong></p> margin: 0px;

首先,<style> 标签没有关闭(1. 开始标签甚至没有完成,2. 您没有关闭标签)- 当我使用 Firefox/Firebug 查看 HTML 时,它会将其余的 HTML 视为在该标签内,并因此不显示它。

此外,您的样式声明(例如float: right;)混合在HTML中,而不是在样式标签中。

问题回答

你真的需要使用Firefox/Firebug来帮助调试。你的脚本错误可能导致页面停止加载,从而导致你的图片无法显示。

如果您要通过Ajax使用内部HTML替换传递此响应,它将无法工作。您需要在回调中对<script>...</script>进行解析并eval()

总的来说,您应该在服务器端使用一些良好的PHP框架,客户端使用Javascript库。否则,您很快就会开始从头开始重写程序,以清理它,只是发现它几乎没有改善。





相关问题
热门标签