gpt4 book ai didi

grails - grails用remoteFunction选择,是否可以更新g:textField?

转载 作者:行者123 更新时间:2023-12-02 15:37:40 26 4
gpt4 key购买 nike

我需要根据用户在g:select中选择的值,使用服务器上的值更新textField的值。在代码中:

 <g:select name="description" from="${momentum.MoneyTransType.prodList}" value="${moneyInstance?.description}"
noSelection="['':'-Select Description-']" onChange="${remoteFunction(action:'setHowMuch', update:[success:'howMuch', failure:'failure'],
params:'\'selection=\' + this.value', options=[asynchronous:false])}"/>

<g:textField id="howMuch" name="howMuch" value="${moneyInstance?.howMuch}"/>

没用如果我给“update:[success:”)一个div id,那一切都很好,但这不是我想要的。我需要允许用户输入自由流动的描述(我将在另一个文本字段中输入)和自由流动的数量。我想我可以隐藏一个div,然后通过jQuery监听对该div的更改,然后更新textField的数量。我是否应该可以使用remoteFunction的“更新”功能或其他grails功能来更新textField?

奇怪的是,使用jQuery change函数放入临时的“toHide” div无法更新textField,即以下警报等无法触发​​:
        $('#toHide').change(function() {
alert(" I got changed, value:");
$("#howMuch").text($(this).val());
});

最佳答案

好吧,在写完下面所有内容之后,我重新阅读了您的问题,看到您说您知道它适用于div。因此,我的其余答案可能没有帮助,但是使用div有什么问题?空div将不会显示任何内容,因此您无需将其隐藏。所以FWIW:

  • 将您的<g:textField ...>放在模板中。
  • 在要渲染模板的位置添加一个div。其他
    单词,将当前<g:textField ..>替换为<div id=updateme name=updateme></div>
  • 在您的setHowMuch操作中,渲染模板。

  • 例如,我这样做:

    鉴于:
    <g:select class='setTagtypeValue-class'
    name='tagtype-${i}-header'
    from="${org.maflt.ibidem.Tagtype.list(sort:'tagtype').groupBy{it.tagtype}.keySet()}"
    value="${setTagtypeValue?.tagtype?.tagtype}"
    valueMessagePrefix="tagtype"
    noSelection="${['null':'Select One...']}"
    onchange="${remoteFunction(action:'options', update:'tagtype-options-${i}',
    params:'\'tagtype=\' + this.value +\'&i=${i}\'' )}" />

    Controller Action :
    def options = {
    def i = params.i ?: 0
    def tagtypes = Tagtype.findAllByTagtype(params.tagtype)

    render(template:"tagtypeList", model:[tagtypes:tagtypes,i:i])

    }

    tagypeList模板:
    <table>
    <tr>
    <th></th>
    <th><g:message code="tagtype.lookup"
    default="Lookup Table" /></th>
    <th><g:message code="tagtype.regexpression"
    default="Field Rule" /></th>
    <th><g:message code="tagtype.uicomponent"
    default="UI Component" /></th>
    </tr>
    <g:each in="${tagtypes}" var="tagtype" status="j">
    <tr>
    <td><g:radio name="setTagtypesList[${i}].tagtype.id" value="${tagtype.id}"
    checked="${(setTagtypeValue?.tagtype?.id == tagtype.id ||
    (!setTagtypeValue?.tagtype?.id && j==0))}"></g:radio></td>
    <td>${tagtype.lookupTable}</td>
    <td>${tagtype.regexpression}</td>
    <td><g:message code="${'uicomponent.' + tagtype.uicomponent.id}"
    default="${tagtype.uicomponent.uicomponent}" />
    </td>
    </tr>
    </g:each>
    </table>

    此代码来自 http://www.maflt.org/products/Ibidem中的元数据集(在UI中称为字段集)屏幕。

    关于grails - grails用remoteFunction选择,是否可以更新g:textField?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7762677/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com