0

ID付きの4つのテキストボックスがあるmvcのページがあり、ボタンのクリック時にテキストボックスをクリアしたいのですが、私のコードは何もしていないようです。ここに私のコードがあります:

<td><%: Html.TextBoxFor(model => model.fdose, new { id = "pls", style = "width:100px;"            })%> </td>
<td><%: Html.TextBoxFor(model => model.fduration, new { id = "plss", style =   "width:100px;" })%></td>     
<td> <button type="submit" class="t-button" name="med" value="med" id="clearmed">+</button></td>

そして、ここに私のスクリプトがあります:

$("#clearmed").click(function (event) {
$("#plss").val("");
$("#pls").val("");
$("#abc").val("");
$("#abcd").val("");
 });
4

3 に答える 3

0

これは送信ボタンであるため、クリック時の送信ボタンのデフォルトの動作を防止します。preventDefaultメソッドを使用してそれを行うことができます。また、ready イベントでコードをラップします。

$(function(){
   $("#clearmed").click(function (event) {
       event.preventDefault();
       $("#plss").val("");
       $("#pls").val("");
   });
}});
于 2012-10-13T22:39:39.727 に答える
0

他のものを使用する場合は、Firebug または別のブラウザー デバッガーを使用してみてください。

于 2012-10-13T22:29:05.070 に答える
0

エラーがなければ、何が問題なのかを判断するのは困難です。JSFiddleを提供して支援していただければ幸いです。発生しているエラーを提供していただければ、回答を更新して問題をより具体的にします。

これを JSFiddle (こちらのを参照) で実行し、ASP.NET ヘルパーを展開しました。HTML にエラーがありました (編集を確認した後で修正したと思います) が、明らかなバグはありません。デバッガー (Firebug、Chrome 開発者ツールなど)を調べて、 jQuery が適切に含まれていること、テキスト ボックスが期待どおりにレンダリングされていること、すべての名前が正しいことを確認します。

私の最終的なコード:

<td><input id="pls" name="fdose" style="width:100px" type="textbox" /></td>
<td><input id="plss" name="fduration" style="width:100px" type="textbox" /><td>
<td><button type="submit" class="t-button" name="med" value="med" id="clearmed">+</button></td>​

$("#clearmed").on("click", function(event) {
    $("#plss").val("");
    $("#pls").val("");
});​
于 2012-10-13T22:30:55.157 に答える