捕获提交事件

时间:2009-07-27 07:47:12

标签: kohana

如何捕获此特定场景中的提交事件(我正在使用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 SCRIPT

$(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(){})已经尝试但无济于事。

1 个答案:

答案 0 :(得分:1)

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

快速解决方案

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

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