动态编辑和更新 cfgrid 值

发布于 2024-10-26 02:55:10 字数 130 浏览 7 评论 0原文

我需要通过双击值来编辑 cfgrid 中一(或多)列的值,然后按 Enter 键,cfgrid 应使用新值更新数据库。

我在 flex datagrid 中看到了这种功能。预计也会有类似的能力。

任何帮助表示赞赏。

I need to edit the values of one (or more) column in the cfgrid by double-clicking the value and on pressing enter the cfgrid should update the db with the new value.

I have seen this capability in the flex datagrid . A similar capability is expected.

Any help is appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

第七度阳光i 2024-11-02 02:55:10

我是 CF 的新手,所以我终于知道了你是如何做到这一点的:你需要添加属性 selectMode=edit 而且你需要添加 onchange 属性。
例如:
onchange = "cfc:getCalculatorData.editCategory({cfgridaction},{cfgridrow},{cfgridchanged})">;

此外,您可以在 cfc editLocation 中编写更新查询

cfc 函数的示例为:

    <cfif isStruct(gridrow) and isStruct(gridchanged)>
        <cfif gridaction eq "U">
            <cfset colname=structkeylist(gridchanged)>
            <cfset value=structfind(gridchanged,#colname#)>
            <cfquery name="team" datasource="batcalc"> 
                UPDATE tbl_category SET <cfoutput>#colname#</cfoutput> = 
                    '<cfoutput>#value#</cfoutput>'
                WHERE category_id = <cfoutput>#gridrow.category_id#</cfoutput>
            </cfquery>
        <cfelse>
            <cfquery name="delCat" datasource="batcalc"> 
                DELETE FROM tbl_category 
                WHERE category_id = <cfoutput>#gridrow.category_id#
                    </cfoutput>
            </cfquery> 
        </cfif>
    </cfif>
</cffunction>

I am newbie to CF so i finally found out how you do that: you need to add the attribute selectMode=edit and moreover you need to add the onchange attribute.
eg:
onchange = "cfc:getCalculatorData.editCategory({cfgridaction},{cfgridrow},{cfgridchanged})">

Further you write your update query in the cfc editLocation

Example for the cfc function is :

    <cfif isStruct(gridrow) and isStruct(gridchanged)>
        <cfif gridaction eq "U">
            <cfset colname=structkeylist(gridchanged)>
            <cfset value=structfind(gridchanged,#colname#)>
            <cfquery name="team" datasource="batcalc"> 
                UPDATE tbl_category SET <cfoutput>#colname#</cfoutput> = 
                    '<cfoutput>#value#</cfoutput>'
                WHERE category_id = <cfoutput>#gridrow.category_id#</cfoutput>
            </cfquery>
        <cfelse>
            <cfquery name="delCat" datasource="batcalc"> 
                DELETE FROM tbl_category 
                WHERE category_id = <cfoutput>#gridrow.category_id#
                    </cfoutput>
            </cfquery> 
        </cfif>
    </cfif>
</cffunction>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文