2

XULがイントラネットアプリのGUIフォームに適しているかどうかを調べようとしています。

しかし、実際にそれを使用している人を見つけるのは困難でした。したがって、HelloWorldスタイルの例をお願いしたいと思いました。

HTTPPOSTを介して送信されたコンテンツを表示するだけのphpページがあるとします。(例:http://mysite.com/postdumper.php

名、姓、年齢を収集し、それを上記のURLにPOSTできるXULフォームを作成するために必要な最小限のコードを誰かに教えてもらえますか?

そのような例を示すリンクやファインマニュアル、またはリファレンスは大歓迎です。

4

3 に答える 3

1

一連の<テキストボックス>を作成し、送信<ボタン>を追加し、テキストボックスからデータを読み取った後、xmlhttprequestを使用して送信します。GETまたはPOSTを使用できます。

于 2009-04-29T01:23:03.393 に答える
1

XMLであるため、XULで名前空間を使用する場合は、プレーンな古いxhtmlフォームを使用できます。

于 2009-04-29T01:31:50.597 に答える
1

私はこれをイントラネットアプリケーションに使用しており、数年前から使用しています。始めるのは難しいかもしれませんが、いくつかのことを理解すれば、それをうまく機能させるのは簡単です。

  1. HTMLについて知っていることのほとんどすべてを忘れました。これはHTMLではなく、古い方法ではできないことがたくさんありますが、代わりにできることは他にもたくさんあります。

  2. コミュニケーションに関するすべてのことは、フォームではなくJavaScriptを使用して行われます。

  3. オーバーレイはdivとは何の関係もありません。ただし、大規模なプロジェクトの設計を分割する場合に非常に役立ちます。

  4. XULページがすべてのタグで正しくフォーマットされていない場合、ページは表示されません。

主な目的がリモートXULについて議論することであるグーグルグループがあります:http: //groups.google.com/group/remotexul

まだあまり活発ではありませんが、もっと多くのメンバーが歓迎されています:)

最小限の例を次に示します。

<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<window id="yourwindow" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script language="javascript">
    function send()
    {
        var firstName = document.getElementById('firstName').value;
        var lastName = document.getElementById('lastName').value;
        var age = document.getElementById('age').value;
        var postData = "firstName="+firstName;
        postData += "&amp;lastName="+lastName;
        postData += "&amp;age="+age;

        var req = new XMLHttpRequest();
        req.open("POST", "/test.php", false);
        req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

        req.send(postData);
        alert(req.responseText);

    }
</script>
<hbox>
    <vbox>
        <hbox>
            <label value="First Name" control="firstName"/>
            <textbox id="firstName"/>
        </hbox>
        <hbox>
            <label value="Last Name" control="lastName"/>
            <textbox id="lastName"/>
        </hbox>
        <hbox>
            <label value="Age" control="age"/>
            <textbox id="age" value="30" type="number"/>
        </hbox>
        <button onclick="send()" label="Send"/>
    </vbox>
</hbox>
</window>

また、代わりにXMLRPCまたはJSONフレームワークを使用して、XULとPHPの間でデータをやり取りすることを検討する必要があることも強調したいと思います。JSONサポートはFirefox3.5に組み込まれています。

もう1つのことは、Firefox 3.5が到着するまで、about:configで何らかの構成を行わない限り、クロスサイトXMLHttpRequestを実行できないことです。つまり、mysite.comのxulのみがmysite.com/postdump.phpにリクエストを送信できます。

于 2009-04-29T06:58:51.683 に答える