0

如何在这种特定情况下捕获提交事件(我正在使用 Kohana):?

控制器功能(swo/test):

echo "Form succesfully submitted.<br/>";
$min = $_POST['price1'];
$max = $_POST['price2'];
echo "Minimum Value:" . $min . "<br/>";
echo "Maximum Value:" . $max;

$q = new Swo_Model;
$result = $q->searchRange($min, $max);
echo Kohana::debug($result);
$view= new View('template');
$view->slider = new View('slider');
$view->content = new View('advsearch');
$view->content->list = $result;

$view->render(TRUE);

这是我的 JQUERY 脚本

$(document).ready(function()
{
$('#slider').slider({
    min:0,
    steps: 50,
    max:300,
    range: true,
    change: function(e,ui){
        $("#min").text("$" + ui.values[0]);
        $("#max").text("$" + ui.values[1]);
        $("input[name='price1']").val(ui.values[0]);
        $("input[name='price2']").val(ui.values[1]);
        $("#advance").trigger("submit");
    }
});
});

我有一个滑块。我将其滑动到特定值,然后通过 jquery 触发表单提交。我想要做的是将 testSubmit 函数的输出加载到我页面中的特定区域,而不刷新滑块。我已经尝试使用 submit(function(){}) 进行此操作,但无济于事。

4

1 回答 1

1

您需要防止事件冒泡 - 发生的事情是您的函数正在运行,然后表单仍在提交。

一个快速的解决方案是

<form ... onsubmit="return myfunction()">

在 myFunction 中,返回 false,这将停止提交提交。您甚至可以在您的 jquery 中捕获错误并在出现问题时返回 true 以导致正确提交,这意味着如果出现问题则优雅地弃用。

于 2009-07-27T07:52:55.457 回答