我想在我的文本框中存储一些隐藏数据。用于存储数据的按钮是否有CommandArgument
之类的属性?文本框位于网格视图中的模板字段中,我在每个文本的文本更改事件中获取这些数据。
修改
TabIndex='<%#((GridViewRow)Container).RowIndex%>'
protected void txt_evaluateWeights_TextChanged(object sender, EventArgs e)
{
calc();
int index = ((RadTextBox)sender).TabIndex;
((RadTextBox)gv_Evaluation.Rows[index + 1].Cells[3].FindControl("txt_evaluateWeights")).Focus();
}
我想用方便的属性替换TabIndex
以保存我的索引。
答案 0 :(得分:2)
您可以在Hidden Field
控件中存储此类值,因为textbox
没有任何此类属性来存储此类值。
答案 1 :(得分:1)
您可以直接执行此操作,但使用隐藏文本框可以将数据存储在文本框旁边。需要注意的是,您应该能够识别出适当的隐藏控件,并在textboxchanged方法中提取相关的数字。
或者,如果您提供更多详细信息,可能还有其他方法可以实现您的目标。
答案 2 :(得分:1)
YourAttributeName='<%#((GridViewRow)Container).RowIndex%>'
protected void txt_evaluateWeights_TextChanged(object sender, EventArgs e)
{
calc();
int index = ((RadTextBox)sender).Attribute["YourAttributeName"];
((RadTextBox)gv_Evaluation.Rows[index + 1].Cells[3].FindControl("txt_evaluateWeights")).Focus();
}
答案 3 :(得分:1)
我建议你使用HTML5“data-”属性。然后你可以使用jquery轻松地提取它。
<textarea name="MyTextArea" data-arbitraryName="HIDDEN TEXT" cols="40" rows="5">
Enter your comments here...
</textarea>
<input type="text" name="MyInput" data-arbitraryName="HIDDEN VALUE" />
然后你会像这样提取它
$("textarea").data("arbitraryName") === "HIDDEN TEXT";
$("input").data("arbitraryName") === "HIDDEN VALUE";
现在使用ASP.NET WebForm控件,您可以在代码隐藏中将arbirtaryName
添加到RadTextBox
var foo = "HIDDEN TEXT";
RadTextBox1.Attributes.Add("arbirtaryName", foo);
这是一些进一步的阅读
http://ejohn.org/blog/html-5-data-attributes/
http://api.jquery.com/data/