• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1763
  • Last Modified:

Submit a form onclick with Jquery autocomplete

I'm using jquery autocomplete on a search form. I would like the form to submit when a result is clicked. IE: No submit button.

Current code is below.

Thanks in advance.
<script type="text/javascript">
$().ready(function() {

	function log(event, data, formatted) {
			$("<li>").html( !data ? "No match!" : "Selected: " + formatted).appendTo("#result");
		}
		
		function formatItem(row) {
			return row[0] + " (<strong>id: " + row[1] + "</strong>)";
		}
		function formatResult(row) {
			return row[0].replace(/(<.+?>)/gi, '');
		}
		
		$("#tablesearch").autocomplete("ajaxsearch.asp", {
			width: 260,
			selectFirst: true

		});




		$("#tablesearch").result(function(event, data, formatted) {
			if (data)
				$(this).parent().next().find("input").val(data[1]);
		});

	})
</script>


'here is the form

<form name="search" action="users_add.asp" method="post" autocomplete="off"><input type="text" name="tablesearch" id="tablesearch" /><input name="submit" type="submit" value="Get" /></form>

Open in new window

0
griffaw
Asked:
griffaw
  • 7
  • 4
1 Solution
 
leakim971PluritechnicianCommented:
0
 
leakim971PluritechnicianCommented:
sorry forget my comment, bad thread...
0
 
leakim971PluritechnicianCommented:
If each result have a class : resultClass

You should be able to use something like :

(where myForm is the id of the form)
$(".resultClass").click(function() { $("form[name='search']").submit(); });

Open in new window

0
Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

 
leakim971PluritechnicianCommented:
(where myForm is the id of the form)
$(".resultClass").click(function() { $("#myForm").submit(); });

Open in new window

0
 
griffawAuthor Commented:
leakim971:

Tried it. Didnt work. Any other thoughts?
0
 
leakim971PluritechnicianCommented:
Can I see your implementation of the proposition ?
0
 
griffawAuthor Commented:
See below. I also need to populate a hidden form field named "editid". I need to pass the id rather than the label.

Thanks!
<script type="text/javascript">
$().ready(function() {

	function log(event, data, formatted) {
			$("<li>").html( !data ? "No match!" : "Selected: " + formatted).appendTo("#result");
		}
		
		function formatItem(row) {
			return row[0] + " (<strong>id: " + row[1] + "</strong>)";
		}
		function formatResult(row) {
			return row[0].replace(/(<.+?>)/gi, '');
		}
		
		$("#tablesearch").autocomplete("ajaxsearch.asp", {
			width: 260,
			selectFirst: true

		});


		$("#tablesearch").result(function(event, data, formatted) {
			if (data)
				$(this).parent().next().find("input").val(data[1]);
		});
		
		$(".resultClass").click(function() { $("#searchform").submit(); });


	})
</script>


///////form

<form name="searchform" id="searchform" action="users_add.asp" method="post" autocomplete="off"><input type="text" name="tablesearch" id="tablesearch" /><input type="hidden" name="editid" id="editid" /><input name="submit" type="submit" value="Get"/></form>

Open in new window

0
 
leakim971PluritechnicianCommented:
I don't see where you're setting the class : resultClass
To be able to use : $(".resultClass").click
0
 
griffawAuthor Commented:
Sorry...do you mean setting the class on the form?
0
 
leakim971PluritechnicianCommented:
>Sorry...do you mean setting the class on the form?

No, you said : I would like the form to submit when a result is clicked. IE: No submit button.

So you need to set "resultClass" on each "result"
0
 
griffawAuthor Commented:
Sorry if im dense...could you please post the code?
0

Featured Post

Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

  • 7
  • 4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now