0
<textbox  id="nextTitleTextbox" readonly="true" value="@bind(ivm.inventory.successorTitleName)" />
<button   id="nextTitleButton" label="..." mold="trendy" onClick="@command('chooseFormerOrSuccessor', isFormer = false)"/>
<a        id="nextTitleHrefView" href="/inventory_new.do?method=edit&amp;docUID=${ivm.inventory.successorTitleName}">view</a>
<a        id="nextTitleHrefHistory" href="javascript:showRenamingHistory(${ivm.inventory.successorTitleName},${ivm.inventory.successorTitleName})">history</a>

問題は「a」タグにあります。テキストボックスとボタンは正常に機能しますが、「a」タグ内のリンクはバインディングからの情報を取得しないため、リンクは のようになり/inventory_new.do?method=edit&amp;docUID=ます。私は多くの組み合わせを試しましたが、他のページでも同様のことが機能しているため、ここで何が問題なのか本当にわかりません。このバインディングのどこが間違っていますか?

zscriptから文字列を入れようとしました

<zscript>
        String successorTitleHref = "/inventory_new.do?method=edit&amp;docUID=" + ivm.inventory.successorTitleName;
</zscript>

しかし、例外があります:

Typed variable declaration : Class or variable not found: ivm.inventory.replacementTitleName.

また、別のファイルに配置されるコントロールと、derective を使用して追加されるすべてのコントロールがサポートされています。

4

1 に答える 1

1

ZK でのバインドは、変数の置換とは関係ありません。@bind()使えるとは限りません${...}。この 2 つは、マニュアルでは「EL 式」と呼ばれていますが、まったく別の概念です。しかし、 EL ExpressionとZUML EL Expressionのバインディングは 2 つの異なるものです。

へのアクセスを許可するにivmは、zscriptこの変数をスクリプトのどこかに定義する必要があります。1 つの方法は、インスタンス化することです。

IVM ivm = new IVM();

または、カスタム変数リゾルバーを使用できます。

于 2013-08-26T13:41:02.903 に答える