Показывать флаг выбранного языка на кнопке в MVC razor

#asp.net-mvc #asp.net-mvc-3 #asp.net-mvc-4 #razor

#asp.net-mvc #asp.net-mvc-3 #asp.net-mvc-4 #razor

Вопрос:

Я просто хочу показать флаг текущего выбранного языка из выпадающего списка в поле идентификатор кнопки =»флаг»

пример.

Если LanguageCode == eng {идентификатор кнопки = «flag» должен добавить class =»lang-eng»}

Иначе, если LanguageCode == th {идентификатор кнопки = «flag» должен добавить class =»lang-th»}

Иначе, если LanguageCode == kor {идентификатор кнопки = «flag» должен добавить class =»lang-kor»}

….и т.д.

 <div class=" navbar-right btn-group center" style="margin-top:8px;">
  <button id="flag" type="button" class="btn btn-default"></button>
  <button id="arrow" type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
    <span class="caret"></span>
    <span class="sr-only">Toggle Dropdown</span>
  </button>
    <ul class="dropdown-menu" role="menu">
      <li>
        <a class="btn-block" href="@Url.Action("Language", "Home", new { languageCode = "cn" })"><span class="lang-cn"></span>  Chinese</a>
      </li>
      <li>
        <a class="btn-block" href="@Url.Action("Language", "Home", new { languageCode = "dutch" })"><span class="lang-dutch"></span>  Dutch</a>
      </li>
      <li>
        <a class="btn-block" href="@Url.Action("Language", "Home", new { languageCode = "en" })"><span class="lang-eng"></span>  English</a>
      </li>
      <li>
        <a class="btn-block" href="@Url.Action("Language", "Home", new { languageCode = "fr" })"><span class="lang-fr"></span>  French</a>
      </li>
      <li>
        <a class="btn-block" href="@Url.Action("Language", "Home", new { languageCode = "ger" })"><span class="lang-ger"></span>  German</a>
      </li>
      <li>
        <a class="btn-block" href="@Url.Action("Language", "Home", new { languageCode = "jap" })"><span class="lang-jap"></span>  Japanese</a>
      </li>
      <li>
        <a class="btn-block" href="@Url.Action("Language", "Home", new { languageCode = "italy" })"><span class="lang-italy"></span>  Italian</a>
      </li>
      <li>
        <a class="btn-block" href="@Url.Action("Language", "Home", new { languageCode = "kor" })"><span class="lang-kor"></span>  Korean</a>
      </li>
      <li>
        <a class="btn-block" href="@Url.Action("Language", "Home", new { languageCode = "mal" })"><span class="lang-mal"></span>  Malaysian</a>
      </li>
      <li>
        <a class="btn-block" href="@Url.Action("Language", "Home", new { languageCode = "th" })"><span class="lang-th"></span>  Thai</a>
      </li>                       
    </ul>
</div>
  

Комментарии:

1. не можете понять вопрос??

2. @KartikeyaKhosla, что такое qus?

3. @YuliamChandra Я просто хочу показать флаг текущего выбранного языка из выпадающего списка в поле идентификатор кнопки = «флаг», например. Если LanguageCode == eng {идентификатор кнопки = «flag» должен добавить class =»lang-eng»} Иначе, если LanguageCode == th {идентификатор кнопки = «flag» должен добавить class =»lang-th»} …. и т.д.

4. @KartikeyaKhosla Я просто хочу показать флаг текущего выбранного языка из выпадающего списка в поле идентификатор кнопки =»флаг» пример приведен выше

5. где у вас находится выпадающий список?

Ответ №1:

вы перенаправляете ссылку на /Home/Language, просто создаете параметр и устанавливаете для него значение ViewBag.

 public class HomeController : Controller
{
    public ActionResult Language(string languageCode)
    {
       ViewBag.LanguageCode = languageCode;
       // Redirects to previous page?
       return Redirect(Request.UrlReferrer.ToString());
    }
}
  

и измените HTML-код кнопки на

 <button id="flag" type="button" class="btn btn-default lang-@ViewBag.LanguageCode"></button>