如何从表中获取值并插入隐藏的feild [英] how to get values from the table and insert into hidden feild

查看:105
本文介绍了如何从表中获取值并插入隐藏的feild的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

< div id =mydivrunat =server> 
< style type =text / cssmedia =all>


table.second
{
保证金:0;
填充:0;
头寸:相对;
top:5px;剩余
:70px;


}
< / style>



受保护的函数doPageLoad(ByVal sender As对象,_ 
ByVal e As System.EventArgs _
)作为IMaCSRetVal

如果Page.IsPostBack = False那么
BindGridview()
对于dp As整数= 1到10
ddlst_Scale_pointers.Items.Add(dp)
下一个
结束如果



受保护的子ddlst_Scale_pointers_SelectedIndexChanged(ByVal发送者) As Object,ByVal e As System.EventArgs)处理ddlst_Scale_pointers.SelectedIndexChanged
Dim sb As New StringBuilder()
sb.Append(< table width =''400''class =''second' 'border =''1px''>)
sb.Append(< tr>)
sb.Append(< td> Pointer No< / td>)
sb.Append(< td> Pointer Label< / td>)
sb.Append(< td> Pointer Color< / td>)
sb.Append(< / tr>)
For i As Integer = 1 to ddlst_Scale_pointers.SelectedItem.Value
sb.Append(< tr>)
sb.Append (< td>&我和我< / td>)
sb.Append(< td>< input id =''txtlbl& i&''type =''text''/>< / td>)
sb.Append(< td>< input id =''txtcolour& i&''class =''color''type =''text''/ >< / td>)

sb.Append(< / tr>)
下一个
sb.Append(< / table>)
sb.Append(< / center>)
mydiv.InnerHtml = sb.ToString()

End Sub。









如何将表格上方的值提取到隐藏的字段中,以便我可以将它们编入数据库?



如何从上表中将值存储到数据库?

解决方案

=>首先将ID字段分配给表。

=>在将数据保存到数据库之前调用javascript fucntion以将表行插入到hiddenfields中。

=>从第二行表开始,找到e ach控件在行中,将此控件的值插入由特殊字符分隔的隐藏字段。

=>一旦将一行插入到hiddenfield中,请插入另一个特殊字符,表示启动另一行。



因此所有的值都会被插入一个hiddenfiled,它也会帮助你分隔每一行,每个值从heddenfield到插入数据库。


  function  FillHidn()
{
var tbl = document .getElementById(' myTable'); // 您拥有的表格ID给定。
var hiddenField = document .getElementById(' <%= myHidden.ClientID%>'); // hiddenfield。
var result = ' ;
if (tbl.rows.length> 1)
{
for var RowCnt = 1 ; RowCnt1)
{
result = result .substring( 1 );
}
hiddenField.value = result;
return true ;
}





< asp:HiddenField ID =myHiddenrunat =server/>

< asp:Button ID =Button1runat =serverText =saveOnClientClick =return FillHidn(); OnClick =Button1_Click/>





  protected   void  Button1_Click( object  sender,EventArgs e)
{
if (myHidden.Value.Length& gt; 0
{
string [] RowArr = myHidden.Value.Split(' ^');
foreach 字符串 obj in RowArr)
{
string [] Cntrls = obj.Split(' 〜');
// 您可以使用此代码将行插入数据库中。
// Cntrls [0]表的第一个Cloumn
// Cntrls [1]表格的第二个
// Cntrls [2]表格的第三个
}
}
}


<div id="mydiv"  runat="server">
 <style type="text/css" media="all">


table.second
{
    margin: 0;
    padding: 0;
    position: relative;
    top: 5px;
    left: 70px;


}
</style>


Protected Function doPageLoad(ByVal sender As Object, _
                                 ByVal e As System.EventArgs _
                                ) As IMaCSRetVal

       If Page.IsPostBack = False Then
           BindGridview()
           For dp As Integer = 1 To 10
               ddlst_Scale_pointers.Items.Add(dp)
           Next
       End If



Protected Sub ddlst_Scale_pointers_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlst_Scale_pointers.SelectedIndexChanged
     Dim sb As New StringBuilder()
     sb.Append("<table width=''400'' class=''second''  border=''1px''>")
     sb.Append("<tr>")
     sb.Append("<td>Pointer No</td>")
     sb.Append("<td>Pointer Label</td>")
     sb.Append("<td>Pointer Color</td>")
     sb.Append("</tr>")
     For i As Integer = 1 To ddlst_Scale_pointers.SelectedItem.Value
         sb.Append("<tr>")
         sb.Append("<td>" & i & "</td>")
         sb.Append("<td><input id=''txtlbl" & i & "''  type=''text'' /></td>")
         sb.Append("<td><input id=''txtcolour" & i & "'' class=''color'' type=''text'' /></td>")

         sb.Append("</tr> ")
     Next
     sb.Append("</table>")
     sb.Append("</center>")
     mydiv.InnerHtml = sb.ToString()

 End Sub.





how can i fetch the values fom above table into hidden feild so that i can strore them to database?

how can i store values to database from above table?

解决方案

=>First assign the "ID" field to table.
=>Call javascript fucntion before saving data to database to insert table rows into hiddenfields.
=>Start from second row of table,find each control in row, insert value of this control into hiddenfield separated by special character.
=>Once one row is insert into hiddenfield again insert another special character which indicates starting of the another row.

thus all the values will be insert into one hiddenfiled ,it will also help you separate each row,each value from heddenfield to insert into database.


function  FillHidn()
    {
     var tbl=document.getElementById('myTable');//ID of table which you have given.
     var hiddenField=document.getElementById('<%=myHidden.ClientID %>');//hiddenfield.
     var result='';
     if(tbl.rows.length>1)
     {
      for(var RowCnt=1;RowCnt1)
     {
      result=result.substring(1);
     }
     hiddenField.value=result;
     return true;
    }



<asp:HiddenField ID="myHidden" runat="server" />
<asp:Button ID="Button1" runat="server" Text="save" OnClientClick="return FillHidn();" OnClick="Button1_Click" />


protected void Button1_Click(object sender, EventArgs e)
    {
        if (myHidden.Value.Length &gt; 0)
        {
             string[] RowArr=myHidden.Value.Split('^');
             foreach (string obj in RowArr)
             {
                 string[] Cntrls = obj.Split('~');
                 //You can use this code to insert the rows into databse.
                 //Cntrls[0] First Cloumn of the table
                 //Cntrls[1] Second Cloumn of the table
                 //Cntrls[2] Third Cloumn of the table
             }
        }
    }


这篇关于如何从表中获取值并插入隐藏的feild的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆