2016-08-05 3 views
0

C#의 HTML 버튼/드롭 다운 메뉴에서 텍스트를 가져올 수 있는지 궁금합니다. asp.net 드롭 다운 목록에서 나는 문자열 텍스트 = dropdownlist.Value 할 수있었습니다; 하지만 다른 유형의 드롭 다운으로는 단순하지 않을 수도 있습니다. 그것은 버튼과 드롭 다운 메뉴로 작동하지 않았기 때문에 나는 ASP 드롭 다운 목록을 사용할 수 없었다. 아래의 기능은 텍스트를 기본 "고급"에서 선택한 항목 텍스트로 사용자가 변경하는 것입니다. 사용자가 단추 텍스트를 변경 한 후에는 해당 텍스트를 가져 와서 sqlbuild.where 절의 조건으로 사용하려고합니다. 또한 검색 버튼을 클릭 한 후에도 업데이트 된 버튼의 텍스트가 남아 있어야합니다. ASP를 사용하여 값 새로 고침 후 남아 드롭 다운 목록을하지만, 어떤 이유로 나는HTML 버튼 가져 오기/C# 코드에서 텍스트 드롭 다운

Something like this is what i had in mind to do: 
// get advancedsearch value 
string selectedTxt = AdvancedSearch.value; 
//filter on selected value 
if (selectedTxt == "item1") 
{ 
    sqlbuilder.where = ("[email protected]"); 
} 
else if (selectedTxt == "item2") 
{ 
    sqlbuild.where = ("[email protected]"); 
etc 

     // container for button/dropdown menu 
     <div class="container"> 
       <div class="row buffer"> 
        <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 "> 
          <div class="input-group" role="group" > 
           <div class="input-group-btn" role="group"> 
           <asp:Button runat="server" class="btn btn-secondary dropdown-toggle" id="AdvancedSearch" data-toggle="dropdown" OnClientClick="AdvancedSubmit();" style="background-color:#718CA1;color:#FFF;" Text="Advanced:" /> 
          <ul class="dropdown-menu" runat="server" id="dropdown" style="background-color:#718CA1;color:#FFF;"> 
           <li><a class="dropdown-item" href="#" data-value="asset">item1</a></li> 
           <li><a class="dropdown-item" href="#" data-value="building">item2</a></li> 
           <li><a class="dropdown-item" href="#" data-value="astmgrbems">item3</a></li> 
          </ul> 
          </div> 
          </div> 
        </div> 
        <div class="col-xs-6 col-sm-6 col-md-6 col-lg-6 text-center"> 
          <div class="input-group" role="group"> 
           <input type="text" id="InquiryInput2" onblur="javascript:removeSpaces()" style="display:none" runat="server" class="form-control" Width="280px" /> 
          </div> 
        </div> 
       </div> 
       </div> 

편집 제출 선택한 후 다운 메뉴 업데이트 드롭, 변화가 전멸 할 때 검색 할 때 - 나는 기능을 추가하는 것을 잊었다 깨달으을 도움이되는 경우

functionAdvancedSubmit() { var obj = document.getElementById ('< % = InquiryInput2.ClientID %>');

  if (obj.style.display == 'none') { 
      obj.style.display = 'block'; 
     } 
    }; 
    $(function() { 
     $(".dropdown-menu li a").click(function() { 
      var selText = $(this).text(); 
      /* $(".btn btn-secondary").html(selText);*/ 
      alert(selText); 
      document.getElementById('<%=AdvancedSearch.ClientID%>').value = selText; 
     }) 
    }); 
+0

'Text' 속성을 사용하고있는 것처럼 보입니다. 'button.Text'가 아니겠습니까? – Whothehellisthat

+0

페이지에서 단추 텍스트가 실제로 변경됩니까? 그렇다면 양식과 함께 게시되지 않습니다. 어쩌면 당신은 이것을 위해 숨겨진 필드를 추가하고 버튼의 값과 동시에 그 값을 변경할 수 있습니까? – Whothehellisthat

+0

@Whamehellisthat 예 버튼 텍스트는 방금 붙여 넣은 기능을 통해 페이지에서 실제로 변경됩니다. 죄송합니다. 비록 내가 언급 했음에도 원래 그것을 추가하는 것을 잊어 버렸습니다. 따라서 프런트 엔드에 html selText 변경 내용을 캡처 한 숨겨진 필드를 추가 한 다음 C# 측면의 필터로 사용할 수 있다고 말하고 있습니까? – ryan45366

답변

1

그냥 ASP 숨김 필드를 추가하십시오. 그런 다음 자바 스크립트에서 해당 필드의 값과 버튼의 값을 설정하십시오. 그렇게하면 양식을 제출할 때 서버에 다시 게시됩니다.