1

GET当使用方法提交表单时,我希望重新加载页面的一部分。以下 JavaScript 运行,但我不确定如何从表单中获取提交的 URL?

我会认为var link = jQuery(this).attr('GET');或somethign会退回它,并尝试过URL等等......但没有运气。有任何想法吗?

jQuery('form').submit(function(e){
    e.preventDefault();
    var link = jQuery(this).attr('GET'); //Get the href attribute
    alert(link);
    history.pushState('data', '', link);
    jQuery('#search_main_section').fadeTo(300,0.3,function(){
        load(link + ' #search_main_section', function(){ jQuery("#loader").hide(); 
        jQuery('#search_main_section').fadeTo(100,1, function(){}); 
    });
});
4

2 回答 2

3
var link = jQuery(this).prop('action');

如果你想要表单的值,你想使用serialize()

使用 action 和 searlize 加载的示例。

​</p>

$("#form1").on("submit", function(e) {

    e.preventDefault();

    var form = $(this);
    var action = form.attr("action") || window.location.href;
    var formValues = form.serialize();
    //example with get     
    //$.get(action, formValues, function(){ alert("done"); });
    //example with load
    var url = action + "?" + formValues;
    $.load(url + ' #search_main_section', function(){ jQuery("#loader").hide();
});​​​​​​​​​​
于 2012-10-18T13:04:30.757 回答
0
<form action="something.php" method="POST">

</form>


jQuery('form').submit(function(e){
    e.preventDefault();
    var url = $(this).attr('action');
   ....// rest of code
于 2012-10-18T13:05:34.967 回答