У меня есть следующий код: -
<div class = "control-group">
<label class = "control-label"><b>Contact</b> <span style = "color: #f00; font-size: larger;">*</span></label>
<div class = "controls input-append">
<input disabled = "disabled" style = "width: 210px" type = "text" id = "id-lookup-addjllcontact-contactid" defaultoid = ""
defaultvalue = "" oid = "" value = ""
field = "SystemUserId" otype = "systemuser">
<a class = "btn" id = "btn-lookup-addjllcontact-contactid"><i class = "icon-search"></i></a>
</div>
</div>
<div>
@Html.Action("_LookupSearchPartial", "Lookup",
new
{
ParentFormId = "form-addjllcontact",
LookupInputId = "id-lookup-addjllcontact-contactid",
LookupButtonId = "btn-lookup-addjllcontact-contactid",
UniqueId = Guid.NewGuid(),
EntityType = "systemuser",
AttributeName = "systemuserid",
AttributeDisplayName = "FullName"
})
</div>
Когда я щелкаю привязку с идентификатором «btn-lookup-addjllcontact-contactid», запускается действие HTML. Кто-нибудь может сказать мне, как? Также я хочу знать, как можно отобразить результат действия HTML в модальном окне.
@StephenMuecke - Я попытался найти это событие .click, но не смог его найти. Вот почему я спросил. Я нажимаю на якорь, и он перезагружает результат HTML Action ??
Это то, что вам нужно: $('#btn-lookup-addjllcontact-contactid').click(function (e) { e.preventDefault(); // show Html.Action contents })
? По-прежнему неясно, отображается ли Html.Action
уже в представлении, и вы просто хотите переключить его видимость или использовать AJAX для загрузки частичного представления.
Тогда у вас должен быть скрипт, выполняющий ajax-вызов вашего метода _LookupSearchPartial()
(или вы действительно обновляете всю страницу?)
На странице где-то спрятан Javascript, который это делал. Это был общий файл javascript, который обрабатывал все поиски в приложении.
this.lookupInput = $('#' + this._config.LookupInputId);
this.lookupButton.live("click", this, JLL.Lookup.Search.showLookup);
Тег
<a>
не запускает код@Html.Action(..)
-@Html.Action()
- это код на стороне сервера, и его HTML-код отображается в представлении при первой загрузке страницы. Непонятно, о чем вы заявляете. Я предполагаю, что у вас должен быть какой-то javascript, обрабатывающий событие.click()
ссылки.