繁体   English   中英

表单提交后将get变量追加到url,而无需新的隐藏输入

[英]Append get variables to url after form submit without new hidden input

我有隐藏的输入值

<input type="hidden" id="as-values-flexmls_connect480723641" class="as-values" value="&amp;MLSAreaMinor=13%20-%20Beachside%26%2344%3B%20N%20of%20Dunlawton%20%26%20S%20Silver,&amp;City=Astor,">

单击表单提交后如何在URL上附加值

因此,我当前的网址http://mysite/advanced-search/然后在<form method="get">上单击提交后,去获取我的所有变量,然后附加该变量

http://mysite/search/?multiple_get=sdasd&amp;MLSAreaMinor=13%20-%20Beachside%26%2344%3B%20N%20of%20Dunlawton%20%26%20S%20Silver,&amp;City=Astor,

怎么做? 我不需要隐藏新的输入,因为这只是创建此输入的插件...

我已经有一个脚本,该脚本从get中删除空变量,并且仅在URL上显示,而不仅仅是空变量。

function removeEmptyGetVariables()
{
    var myForm = document.getElementById('form-id');
    var allInputs = myForm.getElementsByTagName('input');
    var input, i;

    for(i = 0; input = allInputs[i]; i++) {
        if(input.getAttribute('name') && !input.value) {
            input.setAttribute('name', '');
        }
    }
}

您可以将变量附加到端点,然后提交表单,如下所示:

例:

http://js.do/alvaropaco/append-get-variables-to-url-after-form-submit-without-new-hidden-input

您可以使用document.ready函数自动更新操作值,

$(document).ready(function() {
 // Add a hidden value to the form action
var action = $("#my_form").attr("action"),
append = $("input[name=my_input_name]").attr("value");

$("#my_form").attr("action", action + append);
});

在隐藏的输入字段中添加一个名称,

<form action="" name="my_form">
<input name="my_input_name" type="hidden" id="as-values- flexmls_connect480723641" class="as-values" value="&amp;MLSAreaMinor=13%20-%20Beachside%26%2344%3B%20N%20of%20Dunlawton%20%26%20S%20Silver,&amp;City=Astor,">
</form>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM