Я играл с некоторыми пользовательскими html-помощниками, и теперь я пытаюсь создать тот, который я могу использовать для вкладок UI jQuery AJAX.Нужна помощь в создании Custom Html Helper для Asp.net MVC
Так делать Ajax вкладки вы должны иметь этот формат в вашем HTML код
<div id="example">
<ul>
<li><a href="ahah_1.html"><span>Content 1</span></a></li>
<li><a href="ahah_2.html"><span>Content 2</span></a></li>
<li><a href="ahah_3.html"><span>Content 3</span></a></li>
</ul>
</div>
поэтому я не могу использовать ActionLink, потому что я не думаю, что я могу добавить в любом случае тег в ActionLink.
Так что я хочу создать свой собственный html-помощник, у которого есть actionLink с тегом span в нем и, возможно, позже его создать, чтобы с ним был отмечен неупорядоченный тег.
Так что я не уверен, как использовать ActionLink в свою пользу. Подобно ActionLink имеет 10 перегруженных методов, и я не хочу воссоздавать все 10 из них, поскольку это просто кажется бессмысленным. Так что я могу ссылаться на это или что-то в этом роде?
Я использую способ, с помощью которого мои пользовательские html-помощники отображаются, когда вы делаете «Html». в intellisense.
, например, я бы:
public static string Button(this HtmlHelper helper, string id, string value)
Так что я не знаю, как использовать эту HtmlHelper я передаю в
Я также не понимаю эту часть линии. код "this HtmlHelper helper".
Что меня смущает, так это использование ключевого слова «это» в параметре. Я не уверен, на что это ссылается и зачем вам это нужно. Я также не понимаю, как, передавая этот параметр, но не используя его, каким-то образом позволяет вашим клиентом Html-помощникам пользоваться «Html.».
Благодаря
Я попробую это, как только смогу. Итак, я думаю, что нет простого способа использовать ActionLink и 10 перегруженных методов? Я должен в основном рисовать и выбирать то, что мне нужно? И что это делает? InnerHtml = (! String.IsNullOrEmpty (linkText))? HttpUtility.HtmlEncode (linkText): String.Empty Как почему вы HtmlEncoding? Я могу понять, почему вы проверяете пустое, но не знаете, почему ваша кодировка. – chobo2
linkText должен быть закодирован в HTML для получения правильной разметки и соображений безопасности. Из MSDN: Если символы, такие как пробелы и пунктуация, передаются в потоке HTTP, они могут быть неверно истолкованы на принимающей стороне. HTML-кодирование преобразует символы, которые не допускаются в HTML в эквиваленты символов; –