2017-09-06 12 views
0

こんにちは、私はMVCを初めて使うので、いくつかの助けが必要です。私はドロップダウンリストを持っていて、設定からの値が入力されています。私はこのドロップダウンを使用して、クエリを実行してデータをテーブルに戻すためにsubmitを押すときに値を渡すつもりです。JavaScriptまたはJQueryを使わずにボタンをクリックすると@ HTML.DropDownListとTableがリセットされます

私は助けを必要と

:ユーザーが戻って「あなたの値を選択してください」と新しいクエリを実行するために準備中のデータのテーブルをクリアするために、ドロップダウンをリセットしたい場合

を、私は彼らがなりたいです「クリア」ボタンをクリックしてその操作を行うことができるようになりました。

JavaScriptの検索方法について多くのことを勉強しましたが、.NETとMVCを使いたいと思います。ここで

は私のドロップダウンコードです:

@{ 
    ViewBag.Title = "Index"; 
} 
@Html.DropDownList("YourElementName", 
(IEnumerable<SelectListItem>)ViewBag.DropdownVals, "--Choose Your Value--", 
new { 

     //size = "5", 
     style = "width: 600px" 

     } 

私はこのようなボタンがあります:

<input id="Button2" type="button" value="Clear" /> 

ボタンは、リストやテーブルデータの両方をクリアしますコントローラにいくつかのコードを呼び出すことができます?

時間がある場合は詳しく説明してください。

ご迷惑をおかけして申し訳ありません。それが今であるとコントローラ

public ActionResult Index() 
    { 
     //ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application."; 

     string[] values = (ConfigurationManager.AppSettings["DropdownValues"]).Split(',').Select(sValue => sValue.Trim()).ToArray(); 
     List<SelectListItem> dropDowns = new List<SelectListItem>(); 
     for (int i = 0; i < values.Length; i++) 
     { 
      dropDowns.Add(new SelectListItem { Text = values[i], Value = values[i] }); 
     } 
     ViewBag.DropdownVals = dropDowns; 


     return View(); 
    } 
+0

は、ページとあなたが提出したデータを取得する方法をロードするためのコントローラメソッドを投稿することができますか? – adiga

+0

私は 'jquery'を使いたくないのですが、javascriptを使いたいのですが?クリアするには、ページリフレッシュを行う必要があります – adiga

+0

@adigaコントローラコードで質問を更新しました。私はJavascriptを気にしないだろうが、最終的な結果を得るためには、それを見たすべての例がフープを通過しなければならなかった。私は単純なものがほしいと思って何も見つけることができませんでした。 – Abdul

答えて

2

あなたは、単にデフォルトにドロップダウンし、ページを設定しますこれ、ページをリロードすることができます。

<input id="Button2" type="button" value="Clear" onclick="window.location.reload()" /> 

また、これはデータの取り込み方法によっても異なります。クエリ文字列内に値のGet要求がある場合、これは機能しません。

あなたは何をする必要があるだろう:

<input id="Button2" type="button" value="Clear" onclick="location.href='@Url.Action("Index", "ControllerName")'" /> 
+0

これはどのように質問に答えますか?OPはJavaScriptまたはJQuery_( 'onclick' ** IS ** javascript)なしで具体的に述べています –

+0

@StephenMuecke私のコメントの1つは、Javascriptを気にしないと言っていますが、 。 – Abdul

+0

@Abdul、それはあなたの質問が言うことではありません(私たちはコメントではなく質問に答えます)。そして、もしあなたがJavaScriptを使うつもりなら、[Unobtrusive Javascript](https://en.wikipedia.org/wiki/Unobtrusive_JavaScript)を使ってください - 今私たちは21世紀です:) - '$(yourButton).click(function (){... ' –

1

そのような何かをする自然な方法は、クライアント側のコードを使用している、あなたはこれを行うには、サーバーで何かを必要としません。

サーバー側のコードを使用すると、残念ですが、簡単な方法は、同じページをリロードすることです(デフォルトではドロップダウンリストは選択したアイテムなしで設定されます)。簡単なJavaScriptの方法については

、そしてページをリロードない:

<input id="Button2" type="button" value="Clear" onclick="document.getElementById('YourElementID').value=''" /> 
+0

しかし、彼はテーブルをクリアしません。 – adiga

+0

あなたは正しいです、何かが表示されたことに気付かなかった。 – Romias

関連する問題