如何在文本框“属性”中存储隐藏号码

时间:2011-07-31 10:33:37

标签: c# .net asp.net properties controls

我想在我的文本框中存储一些隐藏数据。用于存储数据的按钮是否有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以保存我的索引。

4 个答案:

答案 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/