我可以在没有javascript的情况下加载页面的一部分吗?

时间:2012-01-07 16:39:41

标签: php javascript jquery

我正在使用PHP作为我的服务器端语言,并且有一个返回结果的表单。我目前正在使用jquery来检索结果并更新页面的一部分。这可以在没有jquery的情况下完成吗?若有,那么有什么好的例子吗?

我当前的jquery代码如下所示:

$.post("search_basic_results.php", $("#profile_form_id").serialize(),
    function(data) {    
        $('#search_results').html(data);
    });
});

我正在尝试找到一个免费的java脚本,但我担心我需要重新加载整个页面。

4 个答案:

答案 0 :(得分:3)

  

这可以在没有jquery的情况下完成吗?

是。 jQuery只是一个库。它提供了辅助函数,可以用更少的代码执行操作,并消除浏览器之间的差异。

还有其他库可供选择(我喜欢YUI3),并且jQuery的源代码可用,因此如果你愿意,你可以看到它在幕后做了什么。

  

我正在尝试找到一个免费的JavaScript替代

如果没有客户端编程,则无法在浏览器中编辑文档。 JavaScript是唯一受到广泛支持的操作浏览器DOM的语言。

你可以使用iframe

答案 1 :(得分:2)

没有 Javascript ,这是不可能的。

这是旧学校的Javascript代码。

if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("POST","search_basic_results.php",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;

答案 2 :(得分:1)

  

这可以在没有jquery的情况下完成吗?

当然,你可以使用普通的旧JavaScript JavaScript。你必须写一些代码。但是,当你有一个跨浏览器工作替代jQuery时,你为什么要这样做呢?

就没有javascript操纵DOM而言,如果不重新加载整个页面就无法完成。

答案 3 :(得分:1)

重新加载页面有什么问题?

if (count($_POST) == 0)
{
  // var initialisation
  $input_one = ''; 
  $input_two = '';
  // result wont be displaied
  $display_search = false;
}
else
{
  // this bit keeps track of the input fields
  $input_one = $_POST['input_one'];
  $input_two = $_POST['input_two'];
  // result will be displayed
  $display_search = true;
  // do some stuff that search_basic_results.php would do
}
?>
<form action="" method="post">
  <input name="input_one" type="text" value="<?=$input_one?>"/>
  <input name="input_two" type="text" value="<?=$input_two?>"/>
</form>
<? if ($display search == true): ?>
<!-- display stuff you want to display here /  $('#search_results').html(data); equivalent -->
<? endif ?>