A propriedade de ligação à caixa de texto Valor falha nos modelos do cliente Microsoft Ajax Release beta
-
24-09-2019 - |
Pergunta
O código a seguir deve vincular a propriedade "Valor" da caixa de texto à sequência "teste".
Em vez disso, a expressão de ligação "{{test}}" é deixada semparada como o conteúdo da caixa de texto. A expressão de ligação dentro do elemento irmão é analisada corretamente, no entanto.
<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>
Esse mesmo código funciona ao vincular aos scripts correspondentes no ASP.NET AJAX Preview 4 Release (não está mais disponível no CodePlex, tanto quanto eu sei, mas contido no zip da amostra sobre isto publicar).
Isso é uma regressão ou estou perdendo alguma coisa?
Solução
Eu descobri que qualificar o atributo de valor com o sys:
o espaço para nome permite que a ligação funcione corretamente:
<input type="text" sys:value="{{test}}" />
Esta foi uma alteração feita no 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