2009-04-29 10 views
2

XULがイントラネットアプリケーションのGUIフォームに適しているかどうかを判断しようとしています。最小限の例:XULからhttp POSTを使用する

実際にを使用している人は誰も見つかりませんでした。だから、私は世界のスタイルのあいさつを頼むと思った。

HTTP POSTで送信されたコンテンツを何も表示せずに表示するPHPページがあるとします。 (例:)

ファーストネーム、ラストネーム、および年齢を収集するXULフォームを作成するのに必要な最小限のコードを誰でも表示できます。これを上記のURLにPOSTできますか?

このような例を示すリンクやファインマニュアルやリファレンスは歓迎されていません。

答えて

1

私はこれをイントラネットアプリケーションに使用し、これを数年間行っています。それは始めるのが難しいかもしれませんが、あなたがいくつかのことを理解すれば、それをあなたのために働かせるのは簡単です。

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

  2. すべてのコミュニケーションはjavascriptで行われ、フォームではありません。

  3. オーバーレイはdivとは関係ありません。しかし、それは大規模なプロジェクトのためのデザインを分割するために非常に便利です。

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

主な目的は、リモートXULを議論することで、Googleのグループがあります: 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> 

また、XULとPHPの間でデータをやりとりすることを検討してください代わりにXMLRPCまたはJSONフレームワークを使用します。 JSONのサポートは、Firefox 3.5に組み込まれています。

Firefox 3.5が届くまでは、about:configの設定をしない限り、クロスサイトXMLHttpRequestを実行できません。つまり、mysite.comのxulだけがmysite.com/postdump.phpにリクエストを送信できます。

1

textbox>、submit <ボタンを追加し、テキストボックスからデータを読み込んだ後、xmlhttprequestを使用して送信します。 GETまたはPOSTを使用できます。

1

XMLであるため、XULでその名前空間を使用することを前提として、普通の古いxhtmlフォームを使用できます。

関連する問題