【问题标题】:Update database table更新数据库表
【发布时间】:2013-05-29 15:34:56
【问题描述】:

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

例如:我有 mondayStartmondayEnd 下拉菜单,它们根据数据库中的值填充了上午 9 点到下午 5 点的时间。如果用户将下拉菜单mondayStart 中的值从9:00 am 更改为10:00 am,则值10:00:00 会在单击我创建的Update 按钮时替换当前数据库值09:00:00,并且还将更新其他下拉菜单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" />

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

【问题讨论】:

  • 发布表单正在执行的操作。具体是什么不起作用?

标签: javascript jquery ajax grails


【解决方案1】:

我认为按照这些思路应该可以解决问题:-

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

让我知道这是否有帮助,如果没有帮助,我会尝试提出其他方法。

【讨论】:

  • 我实际上理解那部分,我更好奇如何用下拉菜单中当前选择的值替换现有值。我不知道该怎么做
【解决方案2】:

您应该提交表单(通过 ajax 或正常方式)并在您的控制器中从参数中检索值。

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-07-25
    • 2013-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-20
    • 1970-01-01
    • 2013-06-20
    相关资源
    最近更新 更多