Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript/Jquery从<;转到URL;输入>;及<;数据列表>;_Javascript_Jquery_Html Datalist - Fatal编程技术网

Javascript/Jquery从<;转到URL;输入>;及<;数据列表>;

Javascript/Jquery从<;转到URL;输入>;及<;数据列表>;,javascript,jquery,html-datalist,Javascript,Jquery,Html Datalist,我的问题是: 我想做一个输入框,在我输入建议时自动完成它们。在通过单击或按enter键输入他们的第一个选择(这已经在插件中得到了解决)后,我想提交绑定到URL的选择,以重定向到新URL 插件的基本示例 这是直接从开发者的网站和一个什么是使用的例子 艾达 JAVA JavaScript 笨蛋 LOLCODE Node.js RubyonRails 在我看来,您已经完成了大部分工作,只需要编写一个小的javascript/jquery函数来执行重定向 例如(在blure事件上): var占位符

我的问题是: 我想做一个输入框,在我输入建议时自动完成它们。在通过单击或按enter键输入他们的第一个选择(这已经在插件中得到了解决)后,我想提交绑定到URL的选择,以重定向到新URL

插件的基本示例 这是直接从开发者的网站和一个什么是使用的例子


艾达
JAVA
JavaScript
笨蛋
LOLCODE
Node.js
RubyonRails

在我看来,您已经完成了大部分工作,只需要编写一个小的javascript/jquery函数来执行重定向

例如(在
blure
事件上):

var占位符=“[countryCode]”;
var urlTemplate='1〕https://www.“+占位符+”.gov';
$('.awesomplete')。关于('blur',函数(e){
var值=e.目标值;
var nextUrl=urlTemplate.replace(占位符,值);
log('重定向到-'+nextUrl);
//window.location.href=nextUrl;//取消对重定向的注释
});

阿拉巴马州
阿拉斯加州
亚利桑那州
阿肯色州
加利福尼亚
科罗拉多州
康涅狄格州

在Awesomplete的API中,您可以找到事件列表。一旦发生事件,当用户选择其选项时触发事件。这就是你想要的

您需要使用
window.location.href
方法重定向用户

见下面的代码:

var input=document.getElementById('myinput');
新的Awesomplete(输入);
input.addEventListener('awesomplete-selectcomplete',(e)=>{
//无论何时进行选择,都将调用此回调。
console.log(e.text.label)//获取所选内容的文本
console.log('导航到:'+“www.“+e.text.label+.gov”)
//window.location.href=“www.”+e.text.label+“.gov”;
});

阿拉巴马州
阿拉斯加州
亚利桑那州
阿肯色州
加利福尼亚
科罗拉多州
康涅狄格州

您可以将URL存储在
属性中,然后在输入时读取该URL:

var aweInput=新的Awesomplete(myinput);
myinput.addEventListener('awesomplete-select',函数(e){
var url=e.text.value;//与所选内容关联的值
console.log('导航到:'+url)
//一些可选操作:
e、 preventDefault();//防止URL出现在输入框中
e、 target.value=e.text.label;//将值设置为所选标签
aweInput.close();//关闭下拉列表
//window.location.href=url;
});

阿拉巴马州
阿拉斯加州
亚利桑那州
阿肯色州
加利福尼亚
科罗拉多州
康涅狄格州

您只是在问如何将
值添加到
选项
元素吗?不是这样吗?:
阿拉巴马州
或者可能只是一个数据属性?例如:
Alabama
我不太清楚你具体被困在哪里。你好,大卫,很抱歉不清楚。我确实理解添加值,但我需要让脚本使用该值重定向到其中的URL。看起来好像是其他人提供了这个答案/建议,我目前正试图让它发挥作用。本质上,在标签上有一个URL,然后如果我选择该选项,就转到该URL。(感谢您的回复!)我又迟到了:(刚刚在这里发现了它你好Trincot。是的,这就是我的想象。奇怪的是,当我借用代码时,我似乎无法让它触发重定向。我删除了//我相信这会使
window.location.href=url;
成为一个“注释”在代码中。它似乎在代码片段中工作,但当我在托管环境中运行它时,它似乎不会启动。我将继续使用它。此外,是否可以获取它,使URL不进入框中,而将正常标题保留在标记之间?谢谢您的帮助!确实如此
window.location.href
是重定向的目标。如果这不起作用,您可能会有其他代码以某种方式反作用于此操作。(2)我更新了代码,这样URL就不会进入文本框。有没有可能我没有给它一个适当的文档加载或窗口加载功能?我正在制作一个基本的普通页面,它只使用提供的相同代码,同时将java放入
标记,试图启动它。我想知道这是否与我有关在SharePoint环境中工作?如果需要,我可以尝试提供更多的代码--我非常感谢您的持续帮助,因为我确信这非常简单,但我无法让它正常工作=]您看到
http
https
url的行为有什么不同吗?您也可以尝试使用
top.location=url;
o我已经让它工作了。但是它只想在Chrome上工作,而不是IE11,我想IE11也会支持这种功能。我觉得奇怪,它在一个浏览器上工作,而在另一个浏览器上不工作?另外,我保留了原始代码,http/s似乎没有做任何不同的事情。正在取得进展!