在onclick上动态创建新页面

时间:2016-05-10 14:38:09

标签: javascript php

对此非常新,但是通过这里的帖子帮助我已经走得很远了,我想我已经走到了最后一步,但我已经陷入困境。

我正在尝试在管理面板中动态创建新产品页面,因此每次管理员点击onclick按钮时,都会创建一个新网页,其中包含我已创建的新产品页面中的内容并附加链接以便管理员持续访问每个产品。

我已经能够弹出一个表示已创建页面的弹出窗口。但是无法访问创建的页面。所以我更改了代码,试图显示创建代码的链接并附加链接。

既然我已经改变它onclick没有任何反应,我一直在看代码几个小时,但找不到解决方案。对于像你们这样的专业人士来说可能很明显,但作为一个新手,我的大脑现在已经被炒了。

HTML

<html>
<body>
<button onclick="makePage()">click</button>
<script src="makePage.js">
</script>
</body>
</html>

JS

function makePage(){
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function(){

if(xmlhttp.readyState==4 && xmlhttp.status==200){
var xmlhttp = document.createElement('a');
var createAText = document.createTextNode(xmlhttp.responseText); 
createA.setAttribute('href', xmlhttp.responseText);
createA.appendChild(createAText);
document.body.appendChild(createA);
}
}
}

PHP

<?php
$content = $_GET["content"];
//$file = uniqid() . ".html";
//file_put_contents($file, $content);
$current=file_get_contents($file);
file_put_contents($file, $current, FILE_APPEND | LOCK_EX);
echo $file;
?>

有什么建议吗?我可以阅读的相关页面。任何事情都会非常感激。

1 个答案:

答案 0 :(得分:1)

我认为你应该改变var xmlhttp = document.createElement('a'); 进入:var createA = document.createElement('a');

因为已经创建了xmlhttp并将其用于ajax请求。