jquery - Grails richui 自动完成克隆文本框

标签 jquery grails autocomplete grails-plugin gsp

我在我的应用程序中使用grails richui autocomplete字段。 它适用于我的静态文本框,但当我克隆文本框时,此功能不适用于克隆的文本框,甚至没有显示任何错误。

知道如何解决这个问题

这是我的代码:

<resource:autoComplete skin="default" />

在顶部

<richui:autoComplete name="filterLocation1" id="filterLocation1" delimChar=";"  class="location_txtbox" action="${createLinkTo('dir': 'abc/yyy')}" style="margin-left:5px;"/>

这是我的自动完成字段

我就是这样克隆的

var counter = 1;
$("#addRow").click(function() {
counter++;
var cln = $('#static_table tbody>tr:last').clone(true);
cln.find("[id^='filterLocation']").each(function(i, val) {
    val.id = val.id.match(/^([^0-9]+)[0-9]*$/)[1] + "" + counter;
});

return false;
});

我克隆整行,执行一些隐藏/显示操作并增加 id。

最佳答案

当您克隆tr时,它会克隆所有内容,其中包括由插件创建的javascript。此克隆脚本使用文本字段id使其自动完成。需要更改此 id 和文本字段才能使克隆的自动完成功能正常工作。

我使用以下脚本来更改该 id:

<script type="text/javascript">
    var counter = 1;
    function asd() {
        var cloneContent = "<tr>" + $("#firstTrToClone").html().replace(/giveAUniqueId/g, "giveAUniqueId" + counter++) + "</tr>";
        $("#tableId").append(cloneContent);
    }
</script>

以下是我的完整工作页面:

<!DOCTYPE html>
<html>
<head>
<resource:autoComplete skin="default"/>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
    var counter = 1;
    function asd() {
        var cloneContent = "<tr>" + $("#firstTrToClone").html().replace(/giveAUniqueId/g, "giveAUniqueId" + counter++) + "</tr>";
        $("#tableId").append(cloneContent);
    }
</script>
</head>

<body>
<g:form>
<table id="tableId">
    <tr id="firstTrToClone">
        <td>
            <richui:autoComplete name="name" id="giveAUniqueId" action="${createLinkTo('dir': 'oauthCallBack/test')}"/>
        </td>
    </tr>
</table>
</g:form>

<button onclick="asd()">Clone</button>

</body>
</html>

尝试一下......,.

关于jquery - Grails richui 自动完成克隆文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15608225/

相关文章:

jquery - UI 自动完成和 IE8

javascript - 如何使用滚动加载自动完成数据

javascript - 从 ajax 调用中检索多个值

javascript - 如果元素的索引超过 3,选择元素的最佳方法是什么?

sql - Grails 事务(不是基于 GORM,而是使用 Groovy Sql)

gradle - 无法让 Micrometer Prometheus 下载到我的 Grails 2 应用程序中

grails - 有没有一种方法可以在Spring Security插件的属性文件中定义角色,而不是对其进行硬编码?

javascript - 未捕获的类型错误 : Cannot read property 'length' of undefined JQUERY autocomplete

jQuery,如何克隆回保存的元素?

javascript - 打字时用另一个文本区域更新一个文本区域