我正在使用PHP作为我的服务器端语言,并且有一个返回结果的表单。我目前正在使用jquery来检索结果并更新页面的一部分。这可以在没有jquery的情况下完成吗?若有,那么有什么好的例子吗?
我当前的jquery代码如下所示:
$.post("search_basic_results.php", $("#profile_form_id").serialize(),
function(data) {
$('#search_results').html(data);
});
});
我正在尝试找到一个免费的java脚本,但我担心我需要重新加载整个页面。
答案 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 ?>