2012-11-04 86 views
0

我有一个列表框和列表框旁边的按钮。我正在尝试在所选列表框项目上进行页面更改。因此,选择一个项目然后按下按钮,这会更改页面并将项目传递到搜索页面。更改页面按钮单击不列表框单击jquery

目前,当我按下列表框中的按钮时,它会更改页面。它不会等待你按下按钮。提供的HTML是这里

<div style="margin:auto"> 
<h3 style="text-align:center"> 
Or Search By Home Town: 
<select id="myTown"> 
<?php 
    include("scripts/dbconnect.php"); 
    include("scripts/lists.php"); 
?> 
</select> 
<input type="button" value="Search" /> 
</h3> 

的选择我是在这里:

 $('#myTown option').click(getTown); 
function getTown(){ 
var town=$(this).val(); 
window.location='searchresults.php?querystring='+town+'&querydesc=Town= &querytype=4';} 

我觉得“这个”应改为按钮或类似的规定。

或选择器“选项”需要更改。如果任何人都可以提供帮助,那会很棒。谢谢。

回答

3

你为什么不只是分配一个事件处理程序的按钮:

$('#button1').click(function() { getTown(); }); 

<input id="button1" type="button" value="Search" /> 

,然后摆脱事件处理程序的选项标签

更新(如果你不能改变HTML ):

$('#myTown').parent().find('input').click(function() { getTown(); }); 
+0

不幸的是我不能改变HTML,只能改变jquery。这意味着我无法更改按钮的ID。 –

+0

已更新我的回答 –

0

使用选择框更改事件。每次更改选项时都会触发更改。

<input type="button" id="btn" value="Search" /> 


$('#btn').click(getTown); 
function getTown(){ 
var town=$("#myTown").val(); 
window.location='searchresults.php?querystring='+town+'&querydesc=Town= &querytype=4';} 
+0

当您按下列表框中的任何项目时,这仍然会发生变化,因为我喜欢它,所以当按下按钮时您会更改页面。 –

+0

对不起,我没有完全读你的问题。我做出改变。这应该对你有所帮助。 – Anoop