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

我发现使用sys:命名空间限定 value 属性可以使绑定正常工作:

<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 回答