更新数据库表

时间:2013-05-28 20:42:27

标签: javascript jquery ajax grails

我目前正在使用grails,我正在尝试找出一种方法,我可以使用从两个下拉菜单中选择的两个值来更新我的数据库表utility。当用户从另一个下拉菜单中选择特定值时,我的下拉菜单会从此表中传递值。我正在试图弄清楚如何更新我的表,以便我可以在重新加载时将新更改的值加载到下拉菜单中。

例如:我有mondayStartmondayEnd下拉菜单,这些菜单根据数据库中的值,按照上午9点到下午5点填充。如果用户将下拉菜单mondayStart中的值从9:00 am更改为10:00 am,则值10:00:00会在点击{{09:00:00时替换当前数据库值Update我创建了1}}按钮,并且在更改后也会更新另一个下拉菜单mondayEnd,并将在数据库中覆盖。

目前,我的下拉菜单是根据用户特定的操作填充的:

        <td style="text-align: center; width: 115px;" onchange="e" >
           <select name="mondayStart" id="mondayStart">

           </select>

           <select name="mondayEnd" id="mondayEnd">

           </select>
        </td>

我测试看看更改提醒是否有效:

    $("#mondayStart").live('change', function(e){

            alert($(this).val());
        });

这是我的更新按钮:

    <g:submitButton name="update" style="float: right; margin-right: 10px" type="button" id="update" value="Update" onchange="e" />

如何设置此项以允许在点击我的更新按钮时使用多个值更新我的数据库?

2 个答案:

答案 0 :(得分:0)

我认为沿着这些方向应该做的事情: -

$("#update").click(function() {
    -- code for adding to the database would go here --
    -- might be an idea to use $.post() --
});

请告诉我这是否有帮助,如果没有,我会尝试提出别的东西。

答案 1 :(得分:0)

您应该提交表单(通过ajax或普通方式)并在控制器中检索params中的值。

例如,您可以在控制器中使用以下方法:

def save(String mondayStart, String mondayEnd){
    //Update your domain with those values
    //render view, return values or redirect where you want
}

注意,您可以在方法参数上定义参数o只需从params对象中恢复它们