2016-09-15 2 views
0

アイテムIDで検索する検索フォームとキーワードで検索する2つの検索フォームを持つページがあります。私は今、下の1を追加してい、ページ上の2つの別々の検索フォームで、それぞれのフィールドに検証時に入力する必要があります。

search forms

私はちょうど一番上で開始しました:それはこのようになります。一番下のものは、基本的に最初のコピーと貼り付けです(どちらもSitecoreのコンポーネントです)。これは、それぞれのコードです:

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="SearchByItemNumber.ascx.cs" Inherits="Bayer.CropScience.SC.Internet.US.Website.layouts.Bayer_CropScience.Scope.Country_United_States_Internet.RewardsCatalog.SearchByItemNumber" %> 

<div class="form search-item"> 
    <div class="clearfix"> 
     <h3> 
      <label class="searchByItemNumber" for="item-num">Know your item number?</label></h3> 
     <div class="input-wrapper search-by-itemnumber-length"> 
      <asp:TextBox runat="server" ID="txtSearchItemNumber" CssClass="search-by-itemnumber-length" placeholder="Search by Item Number" /> 
      <asp:RequiredFieldValidator runat="server" ID="rfvSearchItemNumber" ControlToValidate="txtSearchItemNumber" ValidationGroup="searchCatalog" ErrorMessage="Please fill out this field." CssClass="error"></asp:RequiredFieldValidator> 
     </div> 
     <asp:Button runat="server" Text="Go" CssClass="small" OnClick="Search" ValidationGroup="searchCatalog" /> 
    </div> 
</div> 

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="SearchByDescription.ascx.cs" Inherits="Bayer.CropScience.SC.Internet.US.Website.layouts.Bayer_CropScience.Scope.Country_United_States_Internet.RewardsCatalog.SearchByDescription" %> 

<div class="form search-item"> 
    <div class="clearfix"> 
     <h3> 
      <label class="searchByKeywords" for="item-keywords">Search by keywords</label></h3> 
     <div class="input-wrapper search-by-keywords"> 
      <asp:TextBox runat="server" ID="txtSearchKeyword" CssClass="search-by-keywords" placeholder="Search by keywords" /> 
      <asp:RequiredFieldValidator runat="server" ID="rfvSearchKeyword" ControlToValidate="txtSearchKeyword" ValidationGroup="searchCatalogKeywords" ErrorMessage="Please fill out this field." CssClass="error"></asp:RequiredFieldValidator> 
     </div> 
     <asp:Button runat="server" Text="Go" CssClass="small" OnClick="KeywordSearch" ValidationGroup="searchCatalogKeywords" /> 
    </div> 
</div> 

問題は、私は項目番号を記入し、Goをクリックしたときに、私は下の検証エラーメッセージ「この欄に記入してください」を得ることですキーワードボックス、およびその逆。これをどうやって止めるのですか?

EDIT - それは、両方のフィールドを検証する原因となった入力キーを押すと、javascriptの問題だった - 検証エラー私はボタンを「行く」

EDIT 2をクリックすると、「入力」ではなく押したときに発生します。私はカスタムオンキー機能でそれを打ち消しました

答えて

3

あなたは異なっている必要がありますValidationGroups。すべてのフィールドでValidationGroup="searchCatalog"を使用しています。 一意のValidationGroupを、一緒に検証するフィールドに割り当てます。

+0

ああ、素晴らしい!ありがとう! –

+0

2番目のフォームの検証グループが変更されましたが、問題はまだ発生しています –

+0

更新 - 入力を押したときに検証エラーが発生しましたが、ボタンをクリックしたときに検証エラーが発生しました –

関連する問題