2014-02-18 21 views
1

我在我的asp.net webform中使用了ASP TextBoxTelerik RadTextBox。我知道这两个控件在每次回发之后都会清除它的价值,这是出于安全原因而设计的。带密码模式的文本框丢失值

在我的情景中,这两个控件都已经过了jj化。 ASP TextBoxRadTextBox仍然在ajax request (partial postback)上丢失了它的值。

所以我怀疑,这是预期的吗?文本框会在完整的回发以及Ajax请求上失去价值吗?

回答

1

ASP.NET Textbox和Telerik Textbox都将呈现为<input type="password" />。由于它包含敏感信息,因此<input type="password" />与其他控件有所不同。在每一次回寄中,他们都被强制清除。

但是,如果有一些要求,那么你可以存储信息并将其设置回来。

string Password = txtPassword.Text; 
txtPassword.Attributes.Add("value", Password); 

注:但我真的不推荐它。

+1

在每一次回传中,它们都被强制清除。怎么样在ajax请求或部分回发? –

+1

是的!每次回发也包括部分回传。 :) –

0

基于Ajax的函数调用永远不会导致客户端发生数据丢失或刷新。我认为这可能是由于您选择用于Ajax调用的对象而发生的。例如:

<input type="button" id="Submit"> 
<input type="submit" id="Submit"> 

它们在ajax调用中表现出不同的行为。