Javascript 在php中使用ajax从get检索许多值
这里有3个文件ajax.js、index.php和retrieve.phpJavascript 在php中使用ajax从get检索许多值,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,这里有3个文件ajax.js、index.php和retrieve.php $('#button').click(function(){ var string=$('#string').val(); $.get('php/retrieve.php',{input: string} ,function(data){ $('#feedback').text(data); }); }); index.php &
$('#button').click(function(){
var string=$('#string').val();
$.get('php/retrieve.php',{input: string} ,function(data){
$('#feedback').text(data);
});
});
index.php
<html lang="fr">
<head><title></title>
<link rel="stylesheet" type="text/css" href="css/style.css"/>
</head>
<body>
<input id="string" type="text" name="string"/><input id="button" type="button" value="Go"/>
<input id="string2" type="text" name="string"/><input id="button2" type="button" value="Go"/>
<div id="feedback"></div>
<div id="feedback2"></div>
<script type="text/javascript" src="js/jquery-2.1.4.js"></script>
<script type="text/javascript" src="js/ajax.js"></script>
</body>
</html>
retrieve.php
<?php
if(isset($_GET['input'])){
$string=$_GET['input'];
echo strrev($string);
}
?>
在retrieve.php中,我从ajax.js检索输入值。js从index.php检索值。但这里只有它
检索一个值(从
)
我想从index.php中检索许多值(例如
)
我该怎么做呢?在响应中使用JSON符号,这是一种表示数据的漂亮方法 在PHP端,用于将对象编码为JSON 在用于解码的javascript端 这样,您可以:
$.get('php/retrieve.php',{input: string} ,function(data){
var response = JSON.parse(data);
}
要检索多个输入,我建议将它们组合成
形式
:
首先,使用提交按钮将输入嵌入表单中,您也不应该使用相同的名称
两次,因为它现在不起作用,请创建唯一的名称
<form action="GET" id="myForm">
<input id="string" type="text" name="string" />
<input id="button" type="button" value="Go" />
<input id="string2" type="text" name="string" />
<input id="button2" type="button" value="Go" />
<input type="submit" value="Go" />
</form>
在响应中使用JSON符号,这是一种表示数据的漂亮方法 在PHP端,用于将对象编码为JSON 在用于解码的javascript端 这样,您可以:
$.get('php/retrieve.php',{input: string} ,function(data){
var response = JSON.parse(data);
}
要检索多个输入,我建议将它们组合成
形式
:
首先,使用提交按钮将输入嵌入表单中,您也不应该使用相同的名称
两次,因为它现在不起作用,请创建唯一的名称
<form action="GET" id="myForm">
<input id="string" type="text" name="string" />
<input id="button" type="button" value="Go" />
<input id="string2" type="text" name="string" />
<input id="button2" type="button" value="Go" />
<input type="submit" value="Go" />
</form>
在retrieve.php中执行GET请求,并为url提供一个带有字符串值的变量输入。检索到的数据将反映在#反馈上
在retrieve.php中执行GET请求,并为url提供一个带有字符串值的变量输入。然后,检索到的数据将反映在#feedback
div.您可以创建一个更通用的jQuery函数,该函数在这两种情况下都能工作。首先,让我们更正HTML,使其包含正确的表单标记和正确的输入命名:
<html lang="fr">
<head><title></title>
<link rel="stylesheet" type="text/css" href="css/style.css"/>
</head>
<body>
<form name="myForm" action="retrieve.php">
<input id="string" type="text" name="string1"/>
<input id="button" type="button" value="Go"/>
<input id="string2" type="text" name="string2"/>
<input id="button2" type="button" value="Go"/>
</form>
<div id="feedback"></div>
<div id="feedback2"></div>
<script type="text/javascript" src="js/jquery-2.1.4.js"></script>
<script type="text/javascript" src="js/ajax.js"></script>
</body>
</html>
您可能希望每个表单只有一个按钮,因此您应该真正地分离表单,每个表单都有自己的输入。即便如此,上面的jQuery仍然可以使用,如果需要,您可以在以后添加更多类似的表单。您可以创建一个更通用的jQuery函数,在这两种情况下都可以使用。首先,让我们更正HTML,使其包含正确的表单标记和正确的输入命名:
<html lang="fr">
<head><title></title>
<link rel="stylesheet" type="text/css" href="css/style.css"/>
</head>
<body>
<form name="myForm" action="retrieve.php">
<input id="string" type="text" name="string1"/>
<input id="button" type="button" value="Go"/>
<input id="string2" type="text" name="string2"/>
<input id="button2" type="button" value="Go"/>
</form>
<div id="feedback"></div>
<div id="feedback2"></div>
<script type="text/javascript" src="js/jquery-2.1.4.js"></script>
<script type="text/javascript" src="js/ajax.js"></script>
</body>
</html>
您可能希望每个表单只有一个按钮,因此您应该真正地分离表单,每个表单都有自己的输入。即使如此,上面的jQuery仍然可以工作,如果需要,您可以在以后添加更多类似的表单。您缺少了
标记。您的输入具有相同的名称。你可能想。“检索多个值”是什么意思?同时?单独单击按钮时?您缺少
标记。您的输入具有相同的名称。你可能想。“检索多个值”是什么意思?同时?在单独的按钮点击上?为什么OP要“尝试这个”?一个好的答案总是会有一个解释,说明做了什么以及为什么这样做,不仅是为了OP,而且是为了未来的访客。OP正在以$.get()
的形式执行AJAX请求。OP为什么要“尝试这个”?一个好的答案总是会有一个解释,说明做了什么以及为什么这样做,不仅是为了OP,而且是为了未来的访问者。OP正在以$.get()
的形式执行AJAX请求。为什么要改为AJAX?与$.get()
相比,它有什么优势?当OP想要使用现有的按钮时,为什么要添加提交按钮?@JayBlanchard这只是一个简写符号,除了在示例中的可读性之外,没有什么真正的优势,但是可以随意使用#.get('retrieve.php',$form.serialize(),function(){console.log(“it worked”)}
我知道它是,我只是想知道你为什么改成那样,并添加了一个提交按钮。@JayBlanchard为了便于阅读,我更改了它,并添加了一个提交按钮,以显示提交表单的常规方式,同时显示如何在不重新加载页面的情况下进行提交为什么改成AJAX?与$.get()
相比,它有什么优势?当OP想要使用现有的按钮时,为什么要添加提交按钮?@JayBlanchard这只是一个简写符号,除了在示例中的可读性之外,没有什么真正的优势,但是可以随意使用#.get('retrieve.php',$form.serialize(),function(){console.log(“it worked”)}
我知道它是,我只是想知道你为什么改成那样,并添加了一个提交按钮。@JayBlanchard为了便于阅读,我更改了它,并添加了一个提交按钮,以显示提交表单的常规方式,同时显示如何在不重新加载页面的情况下执行此操作