問題タブ [xbl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
66 参照

firefox - xbl:inherits を使用してバインディングの「コマンド」を変更する

Windows の XULRunner で動作するアプリケーションを作成しています。

browser-toolbarそこで、さまざまな場所で使用されるバインディングを作成しました。バインディングは同じように見える必要がありますが、ボタンのクリックで異なるコマンドを実行する必要があります。

私はこのようにそれを達成しようとしています (コードは簡素化され、名前空間は削除されます):

クリックtoolbarbuttonすると、割り当てられたコマンドが正常に実行されます。問題は、 を無効にしcommandても、対応する の無効状態には影響せず、toolbarbutton有効のままです。なぜそれが機能しないのか、誰にも分かりますか?

ありがとうございました!

0 投票する
1 に答える
49 参照

orbeon - Orbeon : コントロールの設定内にチェックボックスがある

カスタム コントロール (XBL) を作成していますが、xf:input フィールドだけでなく、フォーム ビルダーのコントロールの基本設定内にチェックボックスを配置することは可能でしょうか?

例をいただければ幸いです。

0 投票する
1 に答える
406 参照

orbeon - Form Builder での保存イベントのキャッチ

フォームが Form Builder に保存された後に提出を送信したいのですが、最初は次のようなことを試みていました (私の XBL ファイルで):

上記のコードは、xbl:model の外側の xbl:template の間の XBL ファイルに配置されます (運が悪く、xbl:model の内側に配置しようとしましたが)。残念ながら、Form Builder でフォームを保存した後、メッセージが表示されません。なぜそれが機能しないのか、誰にもわかりましたか?

0 投票する
1 に答える
96 参照

exception - saxon:evaluate 例外の処理

フォームからいくつかの引数を渡すことができる XBL ファイルがあります。

それから私はこのようなものを持っています:

問題は、arg1空の文字列の場合です (つまり、私のフォームでは、コントロール設定を押してarg1フィールドをスキップし、空のままにしておくことを意味します)、フォームがクラッシュします。''すべてが問題ないので、空の文字列(asd、q、何か)以外を挿入するarg1と。だから今、私は次のようなことをしたいと思います

明らかに、引用符の問題(条件が間''にある必要があり、内部に引用符を入れることができない)とおそらく他の何かがあるため、機能しません。誰かがこれを修正するのを手伝ってくれますか? 前もって感謝します。

アップデート :

私は少し不正確だったと思います。明確にするために、私のフォームarg1の ID です。フォームが読み込まれると、REST サービスを呼び出します (これは一度Event xforms-model-construct-done behaviorxf:inputを手伝ってくれました)。データが返されます。ここで、データを xf:inputs に入力したいと考えていますが、上記のコードは非常にうまく機能します。問題は、私の XBL には , だけでなく、たくさんのパラメーターがあることです。arg1arg2

さて、フォームでコントロールの基本設定に移動すると、すべてのパラメーターを入力する必要がありarg1...20ます。通常は 3 つか 4 つですが、必要なものだけを記入し、残りは空白のままにします。問題は、フォームがクラッシュし、引数が null の場合に saxon:evalute が例外をスローするため、それができないことです。

(また、すべてに言及しますが、ここでは関係ないと思いますが、上記のコードを理解するのに役立つかもしれません:実際にはarg2、のIDですxf:inputarg1、Webサービスのリソースへのパスのようなものです。arg2 = "'firstname'"my xf:input and arg1 =" //CUSTOMER/FIRSTNAME"(no quotes) and my REST service URL is http://www.thomas-bayer.com/sqlrest/CUSTOMER/2/. このようにして、id のxf:input'firstname'の下に、webservice から取得したデータ全体の firstname のみを挿入することを選択できます. 次に、arg4 は次のようになります'lastname'arg3 などとなります//CUSTOMER/LASTNAME.私が言ったように、ここでは関係ないと思います)

そのため、空の値を確認したかったのですが、あなたのコードが役に立ったはずです-残念ながら機能していません。フォームがクラッシュしなくなりましたが、データが に取り込まれませんxf:inputs。たぶん、この誤解のためですか?ありがとう。

0 投票する
1 に答える
120 参照

firefox-addon - XBL で Firefox 拡張機能を再起動なしに変換

私は Firefox の拡張機能を開発していて、それについて助けが必要です。
私の拡張機能はオーバーレイされ、XBL バインディングを使用して新しい項目をユーザー インターフェイスに追加します。
この拡張機能をブートストラップ タイプに変換することは可能ですか?

検索バーにボタンを追加しようとしています。
XBL を使用して findbar インターフェイスをオーバーライドしました。

ブートストラップから始めるために、style.css に "findbar{ -moz-binding:... }" ルールを含め、このシートを startup() に登録します
(nsIStyleSheetService.loadAndRegisterSheet() を使用)。
この場合、ボタンは再起動せずにバーに追加されます。

しかし、アドオンを無効にするか削除すると、ボタンが消えるようにブラウザを再起動する必要があります。
以下を使用して、bootstrap.js の shutdown() で削除しようとしました。

しかし、これはそれを削除しませんでした。私はコードをデバッグし、すべての要素 (fb、しかし) が見つかって削除されましたが、私が持っていた、または開いたタブの実際の検索バーには触れませんでした。

そこで、XBL を検索バーにバインドするスタイルシートの登録を解除しようとしました。今回は、現在のタブで検索バーが開かなかっただけです。
しかし、新しいタブでは、ボタンなしで開きました(少し良くなりました...)。

また、「this.browser is undefined」という奇妙なエラーのために、開いているタブで検索バーが開かないこともわかりました。
このエラーは、コードが _unpdateCaseSensitivity() を実行しようとしたが、"gFindBar._browser" プロパティを取得できなかった findbar.xml 行 533 を示していました。
おそらく、このプロパティがブラウザの開始時から元の findbar オブジェクトにロードされていなかったことが原因です (オーバーライドされた findbar オブジェクトによって使用されていました)...

これが私がこだわったポイントです...

そして問題は次
のとおりです。再起動せずにボタンを削除して、検索バーが開くようにするにはどうすればよいですか?

0 投票する
1 に答える
144 参照

orbeon - Orbeon : 次々と提出

私のフォームファイルには、load-data-submissionデータベースからデータを取得する送信があり、 xforms-ready で呼び出されます:

現在、これとまったく同じ形式で使用される XBL コントロールがあります。データなどをフェッチする別の送信もあります。それを と呼びましょうrest-submission。ここで、 (XBL 内のもの)が (フォーム ファイル内のもの) がデータを取得したrest-submission直後に呼び出されるようにします。load-data-submission

どうすればいいですか?XBLの中に入れてみました

運がない。

前もって感謝します。

0 投票する
0 に答える
78 参照

javascript - 再起動なしのアドオン アップグレード: CustomizableUI ウィジェットでの XBL 要素の再読み込み

カスタム要素CustomizableUIに基づくウィジェットである再起動不要のアドオンを作成しました。XBL今後のバージョンでは、メインXBL要素を変更しました<slyzoom>

ただし、アップグレードをテストして DOM インスペクターでマークアップを検査すると、XBL現在開いているウィンドウでメイン要素が更新されません。新しく開いたウィンドウでのみ、XBL要素が意図したとおりに表示されます。

CustomizableUI問題が適切に更新されていないことにあるのか、それともXBLバインディングが適切に更新されていないことにあるのかは完全にはわかりません。

また、Firefox を再起動する必要はありませんが、アップグレードの変更を有効にするために新しいウィンドウを開くことは、再起動不要のアドオンを使用する目的に反しています。

Noitidart による別の質問は、同様の問題を示唆しているように見えますが、Noitidart はバインディング ルールのロードにわずかに異なるアプローチを使用しているように見えるため、私の問題がまったく同じかどうかは完全にはわかりません。

問題がどこにある可能性が最も高いかを明らかにできますか?

私の1つのファイルはかなり複雑なので、ここでは単純化されたスリム化されたバージョンのみを掲載します.bootstrap.jsstartup()shutdown()

1) リンクをたどって完全版を表示する