0

次のコードは、テキストボックスの「value」プロパティを文字列「Test」にバインドする必要があります。

代わりに、バインディング式「{{test}}」はテキストボックスの内容として解析されないままになります。ただし、兄弟要素内のバインディング式は正しく解析されます。

<html>
<head>
    <title></title>
    <style type="text/css">
        .sys-template { display:none; }
    </style>
    <script type="text/javascript" src="http://ajax.microsoft.com/ajax/beta/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>

これと同じコードは、ASP.NET AJAX Preview 4リリースの対応するスクリプトにリンクするときに機能します(私が知る限り、CodePlexでは使用できなくなりましたが、この投稿のサンプルZIPに含まれています)。

これはリグレッションですか、それとも何かが足りませんか?

4

1 に答える 1

0

value 属性をsys:名前空間で修飾すると、バインドが適切に機能することがわかりました。

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

これは 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

于 2010-02-03T00:42:08.570 に答える