提升:使用CSS转换为每个项创建AJAX超链接

mat*_*cik 6 ajax scala lift

我想创建一个项目列表,并在每个项目上都有一个执行某些操作的超链接,例如从列表中删除该项目.

我的模板看起来像这样:

<lift:surround with="default" at="content">
<div class="locations lift:Main.locations">
    <ul>
        <li class="one">
            <span class="name">Neverland</span>
            (<a href="#" class="delete">delete this</a>)
        </li>
    </ul>
</div>
</lift:surround>
Run Code Online (Sandbox Code Playgroud)

我正在使用以下CSS转换来填充它:

def locations = {
    ".one *" #> somecollection map { item =>
        ".name" #> item.name &
        ".delete" #> ????
    }
}
Run Code Online (Sandbox Code Playgroud)

现在,而不是"????",我很想放线沿线的东西SHtml.a( ()=>delete(item), _),但_这里是类型CssSela的说法应该是NodeSeq

我当然可以简单xml.Text("delete this"),但我想重用模板内的文本.

或者有不同的方式来生成AJAX超链接?

mat*_*cik 2

我知道怎么做了。基本上,a我必须使用模板中的标签并通过 CSS 转换将 AJAX 代码放入其中,而不是生成标签:

def locations = {
    ".one *" # somecollection map { item =>
        ".name" #> item.name &
        ".delete [onclick]" #> ajaxInvoke (() => delete(item))
    }
}
Run Code Online (Sandbox Code Playgroud)

我怀疑通过这种方式,也可以创建在使用或不使用 JavaScript 的情况下都可以使用的链接