如何通过javascript访问Telerik HtmlatAttributes值?
在Telerik DropDownList上查询HtmlAttributes值需要做什么?我知道如何通过jQuery来实现这一点,但是什么是正确的查询方式呢如何通过javascript访问Telerik HtmlatAttributes值?,javascript,asp.net-mvc-3,jquery,telerik,Javascript,Asp.net Mvc 3,Jquery,Telerik,在Telerik DropDownList上查询HtmlAttributes值需要做什么?我知道如何通过jQuery来实现这一点,但是什么是正确的查询方式呢 @(Html.Telerik().DropDownListFor(model => model.BookingOfficeIdNew) .Name("BookingOfficeIdNew") .HtmlAttri
@(Html.Telerik().DropDownListFor(model => model.BookingOfficeIdNew)
.Name("BookingOfficeIdNew")
.HtmlAttributes(new
{
// How do I access these?
@class = "PropertyProposedValueSelect",
@delta = Model.BookingOfficeIdNew,
@container = "BookingOfficeContainer",
@updateFlag = "BookingOfficeIdChanged",
@deltaValue = "BookingOfficeIdOld",
@newValue = "BookingOfficeIdNew",
@newText = "BookingOfficeNameNew"
})
.ClientEvents(events => events
.OnChange("SelectListValueUpdated")
.OnLoad("OnDropDownListLoad")
.OnOpen("OnDropDownListOpen")
)
.BindTo(Model.BookingOfficeIdChanged ? @Html.ToSelectList(Model.BookingOfficeNameNew, Model.BookingOfficeIdNew, true) : ((SelectListItem)ViewData["DefaultSelectListPrompt"]).ToSelectList(true))
.SelectedIndex(0)
.DataBinding(binding => binding.Ajax().Select("RraOfficeSelectListWithPrompt", "Revision"))
)
编辑/回答:我选择使用正确的类名选择父容器;Telerik DropDownList扩展生成id=“BookingOfficeIdNew”的输入元素,其父div容器具有类“.t-dropdown”
$(“#bookingofficedinew”).parent(“.t-dropdown”)将在DropDownList扩展在HTML中创建的HTML元素上设置值。请看一下由此生成的HTML。我怀疑这可能有用(注意:我实际上没有使用过这个特定的Telerik控件-我只是在猜测我使用过的其他控件) 更新
据我所知,您可以通过jQuery或常规javaScript获得它。telerik控件只是将您定义的HtmlAttributes放入它用于控件的HTML元素中——之后如何处理它们取决于您自己。它不提供处理它的mecahnism,因为您已经可以通过jQuery或常规javaScript来实现这一点。您可以通过getAttribute()方法访问元素的属性 在这种情况下,代码看起来像:
document.getElementById('BookingOfficeIdNew').getAttribute('updateFlag');
不;当然,我已经看过了html,属性被添加到包含的div中(telerik dropdownlists不是html选择控件)。我可以通过jquery很容易地做到这一点,并绕过telerik控件,但我想知道telerik dropdownlist控件代码中是否有某种东西可以“正确”地做到这一点。Michael和我都在尽力提供帮助,然而,我们似乎都因为不理解或曲解你的问题以及你所说的“恰当”的意思(在最初的问题中没有定义)而被否决了。那是一场有点糟糕的演出。(有时候,我真的很想知道我为什么要麻烦!)@gangelo你不会得到比这个更好的答案。绝对不值得投反对票。@ColinMackay-我认为每个人都在努力在很大程度上“帮助”,我想这不是投反对票的原因。我投了你的反对票,因为(用你自己的话来说,“怀疑[ed]”你的答案可能有用,而且,你是在“猜测”;这没有帮助,也不是一个答案,尽管如果我能撤销否决票,我会的。@Daniel-没有更好的答案吗?我不这么认为,但也许否决票有点多:)没有;当然,我已经看过了html,属性被添加到包含的div中(telerik dropdownlists不是html选择控件)。我可以通过jquery很容易地做到这一点,并绕过telerik控件,但我想知道telerik dropdownlist控件代码中是否有一些东西可以“正确”地完成这一任务,是否愿意为那些不是asp.net的用户发布呈现的html?
document.getElementById('BookingOfficeIdNew').getAttribute('updateFlag');