点击链接>新页面>传播输入元素

时间:2011-10-03 21:05:12

标签: php ajax

我们在特定页面上有链接,这些链接是动态提供的。

让我们说我们在关于苹果的网页上。

我们的一个链接可能是,搜索苹果。

非常基本。

<a href="goto.php?q=apples">Search for Apples</a>

在goto.php页面上,我们实际上有一个ajax搜索字段,当用户输入时,它会使用ajax ping我们的数据库,并在下面显示结果。

其输入字段为:

<input name="suburbs"  autocomplete="off" class="suburbsreviews" type="text" id="terms" size="50" onkeyup="getScriptPage('show_results','terms','1')" onblur="if ( this.value == '' ) this.value = this.defaultValue" onfocus="if ( this.value == this.defaultValue ) this.value = ''" value="type your search term" />

基本上,我想要做的是读取传入链接搜索词,在本例中为apples,并将其添加到输入字段中。因此,在页面加载时,输入字段包含单词apples ..

我关心的是输入字段使用ajax工作,并且在keyup上触发请求,所以只需将苹果作为值添加到输入框,这不是真正的gonan工作&gt;

或者是吗?

我不这么认为,所以想知道是否有人知道我们可以启动它的方式,以便输入元素包含引用页面搜索词,并触发ajax请求,以便结果显示在它下面..

ajax页面完全有效,如果我们输入单词,因为它会监听keyup事件,但是想知道是否有解决方法......

干杯Ste

4 个答案:

答案 0 :(得分:2)

如果该文本框有值,您是否尝试在页面加载时触发keyup事件?

if( $('#yourinput').val() !== '' )
    $('#yourinput').trigger('keyup')

P.S我真的不喜欢这个解决方案。

答案 1 :(得分:1)

将搜索词作为<input>的值,并将一段Javascript添加到goto.php,在页面加载时调用一次键盘处理程序(如果输入字段不为空)

答案 2 :(得分:1)

请参阅这些网站以实际获取网址参数:

Using JS and/or jQuery

Using JS and Regular Expressions

现在将值插入输入字段:

var searchTerm = 'mySearchTerm';  // see above to get the search term from the url
$("input[name='suburbs']").val(searchTerm);

现在只需调用执行自动完成功能。放在一起,它看起来像这样:

var searchTerm = 'mySearchTerm';  // see above to get the search term from the url
$("input[name='suburbs']").val(searchTerm);
getScriptPage('show_results','terms','1');

答案 3 :(得分:1)

如果字段不为空,您可以在页面加载时触发键盘 由于你没有jquery,让我们用普通的javascript做。

这应该在你的身体上载:

var val = document.getElementById('terms').value;
if(val.length > 0 && val != 'placeholder'){
    getScriptPage('show_results','terms','1');
}