2011-07-05 41 views
2

我想创建一个表单提交一个字符串到另一个页面只有从URL中删除参数名称。提交表单到字符串(jQuery的?)

即提交与 “富” 下面的表格

<form action="search.asp" method="get"> 
    <input type="text" name="keyword" id="keyword"> 
    <input type="submit" value="Go"> 
</form> 

会去search.asp?foosearch.asp?keyword=foo

可以这样用纯HTML做什么?
我想这可以用JavaScript和/或jQuery完成,但我不确定如何。

任何人都可以帮忙吗?

我是一个小菜鸟,所以复制和粘贴解决方案将是伟大的我。

更新: 感谢迄今为止的答案,但他们似乎并没有工作。也许更好的方法是让JQuery构造URL并加载该URL?任何更多的建议将是伟大的。

+0

你问如何发送它?或如何接收它?或两者?你为什么想要这样做? – AndyL

+0

目标页面可以很好地接收它。不幸的是,我坚持使用一些旧代码(在我预约此项目之前),我想扩展该页面的功能,以便通过网站中其他地方的快速文本字段进行访问。我认为这样做比重写许多与其他功能相关的旧内容并冒险破坏它更快。 – RickyD

回答

0

试试这个:

<form action="search.asp?foo"> 
0

也许...?

$('input[type="text"]').blur(function() { 
    $('form').attr('action', 'search.asp?' + $('input').val()); 
}); 
0

让我们给表单并提交按钮类名称为方便起见,我们假定我们拥有jQuery的页面上。

<form action="search.asp" method="get" class="search_form"> 
    <input type="text" name="keyword" id="keyword"> 
    <input type="submit" value="Go" class="search_button"> 
</form> 

<script type="text/javascript"> 
    $(function(){ 
    var $form = $(".search_form"); 
    // save the default action, because we are going to mess with it. 
    $form.data("original-action", $form.attr("action")); 
    // listen to the click on the button, update the form action and submit the form manually 
    $(".search_button").click(function(){ 
     $form.attr("action", $form.data("original-action") + "?" + $("#keyword").val()); 
     $form.submit(); 
     return false; 
    }); 
    }); 
</script> 

未测试,但应该工作。让我知道。

顺便说一句,保存默认操作可能不需要。但是,如果你想用Ajax提交它而不重新加载页面。

0
<script> 
$(document).ready(function(){ 
    $("#btnSubmit").click(function(){ 
     var keywordVal = $("#keyword").val(); 
     window.location.href = "search.asp?" + keywordVal;   
    }); 
}); 
</script> 

<input id="keyword" type="text" name="keyword"> 
<button id="btnSubmit">Submit</button>