开发者

Binding to text box value property fails in Microsoft AJAX Client Templates beta release

The following code should bind the "value" property of the text box to the string "Test".

Instead the binding expression "{{test}}" is left unparsed as the text box content. The binding expression within the sibling element is parsed correctly however.

<html>
<head>
    <title></title>
    <style type="text/css">
        .sys-template { display:none; }
    </style>
    <script type="text/javascript" src="http://ajax.microsoft.com/ajax/b开发者_运维问答eta/0911/MicrosoftAjax.debug.js"></script>
    <script type="text/javascript" src="http://ajax.microsoft.com/ajax/beta/0911/MicrosoftAjaxTemplates.debug.js"></script>
</head>
<body xmlns:sys="javascript:Sys"
      xmlns:dataview="javascript:Sys.UI.DataView"
      sys:activate="bindingTest">
        <div id="bindingTest" class="sys-template"
            sys:attach="dataview"
            dataview:data="{{ { test : 'Test' } }}">
                <input type="text" value="{{test}}" />
                should contain: <span>{{test}}</span>
        </div>
</body>
</html>

This same code works when linking to the corresponding scripts in the ASP.NET AJAX Preview 4 release (no longer available on CodePlex as far as I can tell, but contained in the sample ZIP on this post).

Is this a regression, or am I missing something?


I discovered that qualifying the value attribute with the sys: namespace enables binding to work properly:

<input type="text" sys:value="{{test}}" />

This was a change made in ASP.NET AJAX 4.0 Preview 5: http://weblogs.asp.net/fredriknormen/archive/2009/09/11/asp-net-ajax-4-0-preview-5-available.aspx

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜