ок, сделал через ajax вот так
my.php
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<script type="text/javascript">
function loadXMLDoc(method,url){
if(window.XMLHttpRequest){
req = new XMLHttpRequest();
req.onreadystatechange = processReqChange;
req.open(method, url, true);
req.send(null);
}else if(window.ActiveXObject){
req = new ActiveXObject("Microsoft.XMLHTTP");
req.onreadystatechange = processReqChange;
req.open(method, url, true);
req.send();
}
}
function processReqChange(){
if(req.readyState == 4){
if(req.status == 200){
getMy(req.responseText);
}else{
alert("There was a problem retrieving the XML data:n" + req.statusText);
}
}
}
function onChange_old(_this) {
document.getElementById('my').innerHTML = "ok";
}
function onChange_(_this) {
var url = "ajax.php?my="+_this.value;
loadXMLDoc("get",url);
}
function getMy(data){
var div = document.createElement("div");
div.innerHTML = data;
document.getElementById('my').appendChild(div);
}
</script>
</head>
<body>
<?php
echo"<script src='copy.js' type='text/javascript'></script>";
function my(){
$test = '<div id="my" name="my">';
$test .= 'hello world';
$test .= '<br>';
$test .= '<input type="button" value="Go" onClick="onChange_(this)"/>';
$test .= '</div>';
return $test;
}
?>
<?php
echo my();
?>
<br>
<input type="button" value="Add" onmouseup="addField()" />
</body>
вот ajax.php
<?PHP
header('Content-Type: text/html; charset=windows-1251');
$request = $_GET["my"];
if($request){
echo loadData($request);
}
function getMy($request) {
$tmp = " - ok -";
return $tmp;
}
function loadData($request){
$result = getMy($request);
if($result) return $result = $result;
}
?>
и скрипт добавления
function addField() {
var div = document.createElement("div");
div.innerHTML = "<div id=\"new\" name=\"new\"> new </div>\n"; // - работает
// div.innerHTML = "<?php echo my(); ?>"; // -не работает
document.getElementById("my").appendChild(div);
return false;
}
Что я хочу получить и никак не могу/ не понимаю
Нужно чтобы после нажатия кнопки Add
в текущую страничку добалялась функция php
<?php
echo my();
?>
и исполялась.
Т.е. после одного нажатия должно получится
hello world + кнопка Go
hello world + кнопка Go
Как сделать такое ? я не силен в php и JS и документация тут не сильно помогает - так что подскажите если знаете