2010-11-22 13 views
1

私は現在jQTouchウェブプロジェクトをjQuery Mobileに移植しており、次の問題を抱えています。ページ送信のボタンをページヘッダーに表示する必要があります。 (コンテンツのsubmit型の入力ではなく)ヘッダーのjQuery Mobileは、そのボタンを常にフォームの一部としてレンダリングします。ヘッダーにサブミットボタンを表示する

これは動作します(ボタンはページヘッダーの右側に表示されます):

<div data-role="header" data-theme="b"> 
    <a href="#" class="ui-btn-right" data-icon="check"><%: Resources.View.Account.Labels.DoLogOn %></a> 
</div> 

事はある、私は明らかに私はむしろしたい、提出トリガするカスタムJavaScriptを記述する必要があるだろうない。一方、フォーム内でこれを処理すると、つまり

<% using (Html.BeginForm("LogOn", "Account", 
    new { returnUrl = Request.QueryString["ReturnUrl"] }, FormMethod.Post,   
    new { @class = "ui-body ui-body-c" })) 
    {%> 
     <fieldset class="ui-grid-a" data-theme="c"> 
     <input data-icon="check" 
       class="ui-btn-right" 
       type="submit" 
       value="<%= Resources.View.Account.Labels.DoLogOn %>" /> 
     </fieldset> 
<% } %> 

ボタンがコンテンツ内に表示されます。

後者の方法を使用してjQuery Mobileに送信ボタンをヘッダーに表示させる方法はありますか?

答えて

0

私は数ヶ月遅れていることは知っていますが、この記事では別の問題を研究しています。ヘッダーにボタンからページを送信するには、次のボタンのマークアップを使用することができます。

<a href="#" onclick="$('form#Account').trigger('submit')" class = "ui-btn-right" data-role="button" >Logon</a> 
0

私はjQTouchに精通していませんが、次のようなものはどうですか? 問題はおそらく、使用されたCSSクラスの周りにあり、それらを使用した場所です。

<% using (Html.BeginForm("LogOn", "Account", 
    new { returnUrl = Request.QueryString["ReturnUrl"] }, FormMethod.Post)) 
    {%> 
    <div data-role="header" data-theme="b"> 
    <fieldset class="ui-grid-a" data-theme="c"> 
    <input data-icon="check" 
      class="ui-btn-right" 
      type="submit" 
      value="<%= Resources.View.Account.Labels.DoLogOn %>" /> 
    </fieldset> 
    </div> 
    <div id="Content" class="ui-body ui-body-c"> 
     ...content here 
    </div> 
<% } %> 
+0

は動作しません、ヘッダーが(その周りに余分なフレームを追加)フォーム内にレンダリングされると、ボタンが完全に表示されますので、ボタンのようなスタイルのリンクがついていて、ページのヘッダー全体にまたがって表示されている入力要素に加えて、それ以外の要素の上に表示されます。 –

+0

domインスペクタを使用して各ノードに適用されるCSSを確認することをお勧めします。 IE 8の開発者ツールを使用するか、firefox for firefoxをインストールすることができます。 – ptutt

関連する問題