选择一个没有重新加载页面的选项

时间:2011-07-01 16:20:25

标签: jquery

我知道,我的代码不太好,但我尽我所能。

这是我的代码:

function submitForm() {
    document.getElementById("formElement").submit();
}

jQuery(document).ready(function($) {
var img = new Image();
    $(img).load(function () {
    $(this).hide();
    $('#loader').removeClass('loading').append(this);
    $(this).fadeIn(800);
}).attr('src', '.chart.php?id=<? echo $sid; ?>&date=<? echo $order; ?>');
});

<div id="loader" class="loading"></div>

<select name="order" class="dropdown" onChange="submitForm()">
<option disabled selected> <? echo(CHOOSE); ?> </option>
<option value="./chart.php?id=<? echo $sid; ?>&date=d"> <? echo(CHOOSE_DAY); ?> </option>
<option value="./chart.php?id=<? echo $sid; ?>&date=m"> <? echo(CHOOSE_MONTH); ?> </option>
<option value="./chart.php?id=<? echo $sid; ?>&date=y"> <? echo(CHOOSE_YEAR); ?> </option>
</select>

我的问题是,如果我使用选择选项,我不想重新加载页面。

我希望任何人都可以帮助我,thx现在^^

2 个答案:

答案 0 :(得分:1)

您需要学习如何使用jQuery制作“Ajax”。你可以从: 5 Ways to Make Ajax Calls with jQuery

答案 1 :(得分:1)

select上呼叫onChange="submitForm()"

您的submitForm()函数提交表单。

如果您想通过ajax提交表单,而不是通过标准表单提交(始终重新加载页面),那么在jQuery(document).ready(function($){})调用中,您可以使用$.post

jQuery(document).ready(function($){
    $('#formElement').submit(function(){
        $.post('url/to/post/to.php', $(this).serialize, function(data){
            // Some code to run on successful post
        });
        return false;
    });
})

这样,当您的submitForm()函数调用.submit()时,return false;会阻止页面重新加载,但$.post()仍会将您的数据发布到处理表单的任何页面提交。