Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: сделать чтобы ссылка вызывала функцию
 
 автор: psychomc   (24.11.2008 в 18:09)   письмо автору
 
 

есть страница с кодом:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Language" content="ru">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>AJAX PHP search example - XML</title>

<link rel="stylesheet" href="style.css" type="text/css">
<script src="script.js" type="text/javascript"></script>

</head>
<body>
<div id="wrap">


<a href="#" OnClick="return search();">ссылка</a>



<form onsubmit="search(); return false;">
<input type="text" class="input" value=""> <input type="submit" class="button" value=>
</form><br>

<div id="search_results">
</div>

<div id="searching">
    searching
</div>

</div>
</body>
</html>


ссылка выделенная жирным должна вызывать ту же функцию что и форма, но я никак не могу правильно написать обработку события, т.к не знаю javascript, помогите пожалуйста


объект и вызываемая функция
function getXmlHttp() {
  var xmlhttp;
  try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
      try {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (E) {
      xmlhttp = false;
    }
  }
 
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
    xmlhttp = new XMLHttpRequest();
  }
  return xmlhttp;
}

function search() {
  var sSearch = 1;
  
  var xmlHttp;
  xmlHttp = getXmlHttp();
  
  var obj = document.getElementById("search_results");
  obj.innerHTML = "";
  var loading = document.getElementById("searching");
  loading.style.display = "block";

  xmlHttp.onreadystatechange = function()  {
    if (xmlHttp.readyState == 4)
    {
      loading.style.display = "none";
      var xmlDoc = xmlHttp.responseXML.documentElement.getElementsByTagName("entry");
      for (i = xmlDoc.length-1; i>= 0 ; i--)
      {
        var new_el = document.createElement("div");
        var sTitle = xmlDoc[i].getElementsByTagName("title")[0].firstChild.nodeValue;
        var sContent = xmlDoc[i].getElementsByTagName("content")[0].firstChild.nodeValue;
        
        new_el.innerHTML = "<h1>"+sTitle+"</h1>"+sContent;
        new_el.className = "result";
        
        obj.appendChild(new_el);
      }
    }
  }
  
  xmlHttp.open('GET', 'search.php, true);
  xmlHttp.send(null);
}


модуль php для вывода данных с базы

<?php
  
include 'config.php';
  
header('Content-type: application/xml; charset=utf-8');
  
header('Cache-Control: no-cache');
 
  echo 
'<?xml version="1.0" encoding="utf-8"?>' "\n";
  echo 
"<searchresults>\n";
  
  
$sString mysql_real_escape_string($_GET["search"], $db);
  
$sql="insert into link values(null,'name',1)";
  
mysql_query($sql);
  
  
$query "SELECT * FROM link"
  
$rs mysql_query($query);
   if (
$rs)
  {
      if (
mysql_num_rows($rs) > 0)
      {
          while (
$row mysql_fetch_array($rs))
          {
               
$content=$row["name"];
?>
<entry>
    <title><?=$row["name"];?></title>
    <content><?=$content;?></content>
</entry>
<?php
         
}
     }
  } 
?>
</searchresults>

  Ответить  
 
 автор: ddhvvn   (24.11.2008 в 18:13)   письмо автору
 
   для: psychomc   (24.11.2008 в 18:09)
 

вызов функции по клику
<a href="javascript:void(null);" onclick="func();">ссылка</a>

return используется, когда дальнейшее действие (переход по ссылке) должно произойти только при опред. условии

например (пусть не самый лучший пример, но)
<a href="del.php?id=2" onclick="return confirm('Вы действительно хотите удалить?');">удалить</a>

  Ответить  
 
 автор: psychomc   (25.11.2008 в 10:31)   письмо автору
2.6 Кб
 
   для: ddhvvn   (24.11.2008 в 18:13)
 

спасибо за ответ, но к сожалению не работает :(

получается такая конструкция в файле index.htm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Language" content="ru">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>AJAX PHP search example - XML</title>

<link rel="stylesheet" href="style.css" type="text/css">
<script src="script.js" type="text/javascript"></script>

</head>
<body>
<div id="wrap">


<a href="javascript:void(null);" onclick="search();" id="search_input">ссылка</a>


<form onsubmit="search(); return false;">
<input type="text" class="input" id="search_input" value=""> <input type="submit" class="button" value="&raquo; поиск">
</form>


<br>

<div id="search_results">
</div>

<div id="searching">
    searching
</div>

</div>
</body>
</html>


но ссылка всё-равно не вызывает эту функцию...id тоже не помогает
если не сложно посмотрите пожалуйста прикреплённый файл как это работает, там всё что нужно...
это просто пример, главное чтобы ссылка работала...

  Ответить  
 
 автор: mikha   (25.11.2008 в 13:39)   письмо автору
 
   для: psychomc   (24.11.2008 в 18:09)
 

Переименуйте функцию search. Ну хотя бы на search_.

  Ответить  
 
 автор: psychomc   (25.11.2008 в 15:07)   письмо автору
 
   для: mikha   (25.11.2008 в 13:39)
 

спасибо,работает!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования