1

こんにちはみんな私はasp.netmvc3の強く型付けされたビューからイベントブラーを取得する方法に苦労しています。これは私が試したことです。

<table>
 <td class="contentTable">
     @Html.LabelFor(model => model.Ciudad)
  </td>
  <td>
     @Html.EditorFor(model => model.Ciudad, new{id= "mapSearch"})
     @Html.ValidationMessageFor(model => model.Ciudad)
 </td>
</table>


<script type="text/javascript">
    $(function () {
        $('#mapSearch').blur(function () {
           myFunction();
       });
});
</script>   

myFunctionはすでにボタンで起動して使用している関数ですが、イベントで起動したかったのです。私も試しました:

@Html.EditorFor(model => model.Ciudad, new{onblur= "mapSearch();"})

ありがとう

4

2 に答える 2

2

これを試して。ビューマークアップを次のように変更します

 @Html.EditorFor(model => model.Ciudad)

とこのようなスクリプト

$(function () {
    $('#Ciudad').blur(function () {
           myFunction();
    });
});

myFunctionあなたがexistと呼ばれるjavascript関数を持っていると仮定します

function myFunction() {
        console.debug("myFunction Called");
       //Some other awesome stuff here
}

JsFiddleサンプル: http ://jsfiddle.net/C3wMY/4/

于 2012-07-24T02:10:35.013 に答える
0

EditorFor には、html 属性を受け取るオーバーライドがありません。「EditorFor」レベルでは、どの要素が挿入されるか、またはそれらの属性を取得する方法がわかりません。TextBoxFor、DropDownListFor、または特定の要素を追加する別のヘルパーを使用する必要があります。または、使用しているエディターの場合は、エディター テンプレートに属性を追加する必要があります。必要に応じて属性をテンプレートに渡すことができますが、モデルの一部として (または ViewBag などの方法で) 渡すことができます。

于 2012-07-24T10:55:24.843 に答える