Javascript 如何在ajax中基于搜索字段输入调用URL?
我的索引页上有一个搜索表单Javascript 如何在ajax中基于搜索字段输入调用URL?,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我的索引页上有一个搜索表单 <form method="post" action="search.php?go" id="searchform"> <input type="text" name="name"> <input type="submit" name="submit" value="Search"> </form> 我想调用一个以json格式返回数据的外部搜索引擎
<form method="post" action="search.php?go" id="searchform">
<input type="text" name="name">
<input type="submit" name="submit" value="Search">
</form>
我想调用一个以json格式返回数据的外部搜索引擎
如何将搜索词放入ajax变量“searchterms”中,以便将搜索词添加到外部搜索引擎的URL中?
我想不出来。假设您的
输入
字段名为名称
是您要从中提取术语的字段,请给它一个ID:
<input type="text" name="name" id="searchbox">
假设名为
name
的input
字段是要从中提取术语的字段,请为其指定一个ID:
<input type="text" name="name" id="searchbox">
您不必从其他网站读取,这是为了防止XSS(跨站点脚本)攻击 如果你能够从其他网站上阅读,你就有可能从用户那里窃取信息。向其他网站发出请求的唯一方法是通过“JSONP” 通过充当外部脚本绕过安全要求。它不是加载原始JSON数据
{“type”:“JSON”}
,而是使用原始数据调用函数<代码>JSONP函数({“类型”:“JSONP”})代码>
您必须提供回调函数才能处理它。您不必从其他网站读取,这是为了防止XSS(跨站点脚本)攻击 如果你能够从其他网站上阅读,你就有可能从用户那里窃取信息。向其他网站发出请求的唯一方法是通过“JSONP” 通过充当外部脚本绕过安全要求。它不是加载原始JSON数据
{“type”:“JSON”}
,而是使用原始数据调用函数<代码>JSONP函数({“类型”:“JSONP”})代码>
您必须提供回调函数才能处理它。请尝试以下代码
用自己的url替换url
var searchterms='';
函数getTerm(术语){
控制台日志(术语);
$('.term')。文本(term);
}
$(“#提交”)。在(“单击”,函数(){
searchterms=$(“#searchbox”).val();
console.log(searchterms);
变量url=”https://externalwebsite.com/search?term=“+searchterms+”&variable2=something”;
console.log(url);
$.getJSON(url、函数(数据){
控制台日志(数据);
});
返回false;
});代码>
试试下面的代码
用自己的url替换url
var searchterms='';
函数getTerm(术语){
控制台日志(术语);
$('.term')。文本(term);
}
$(“#提交”)。在(“单击”,函数(){
searchterms=$(“#searchbox”).val();
console.log(searchterms);
变量url=”https://externalwebsite.com/search?term=“+searchterms+”&variable2=something”;
console.log(url);
$.getJSON(url、函数(数据){
控制台日志(数据);
});
返回false;
});代码>
谢谢!我还没有让它工作,但它似乎是对的。问题是,我是一个初学者,我还没有真正掌握ajax。我有一个解析json数据的代码,这是我从自己的数据库中获得的,运行良好。现在,我尝试将该代码重新用于外部json数据,但还没有任何结果。我甚至不知道外部数据是否已加载。谢谢!我还没有让它工作,但它似乎是对的。问题是,我是一个初学者,我还没有真正掌握ajax。我有一个解析json数据的代码,这是我从自己的数据库中获得的,运行良好。现在,我尝试将该代码重新用于外部json数据,但还没有任何结果。我甚至不知道外部数据是否已经加载。谢谢,到目前为止,我可以使用固定数据毫无问题地解析信息。现在我试着在动态数据的基础上做同样的事情。谢谢,到目前为止,我可以使用固定数据毫无问题地解析信息。现在我试着基于动态数据做同样的事情。谢谢,我放弃了。我对阿贾克斯太笨了。我想我已经找到了一种只使用php的方法。谢谢,我放弃了。我对阿贾克斯太笨了。我想我已经找到了一种只使用php的方法。
var searchterms = $('#searchbox').val();