2010-07-21 2 views

Répondre

0

En fait, sur une page HTML dynamique typique, les valeurs de la table sont chargées à partir de la base de données. Mais, si vous le souhaitez, vous pouvez toujours analyser la source de la page et enregistrer les valeurs de chaque ligne dans votre base de données. Est-ce que c'est ce que tu veux faire?

+0

me montrer une syntaxe – shamim

1

Vous pouvez utiliser le pack HTML Agility comme ceci:

WebClient webClient = new WebClient(); 
    const string strUrl = "http://www.myspace.com/centuryman"; 

    // Setup proxy for internal stuff 
    //System.Net.WebProxy pry = new System.Net.WebProxy("194.80.164.8", 80); 
    //pry.Credentials = CredentialCache.DefaultCredentials; 
    //WebRequest.DefaultWebProxy = pry; 

    Stream s = webClient.OpenRead(strUrl); 

    HtmlDocument doc = new HtmlDocument(); 
    doc.Load(s); 

    HtmlNode link = doc.DocumentNode.SelectNodes("//*[@id='profile_bandschedule']")[0]; 

Cela vous retourner un objet enumarable que vous boucle autour et pourrait insérer des valeurs du html dans la base de données.

Voir un autre exemple:

How to use HTML Agility pack

+0

utiliser HtmlDocument et HtmlNode dont l'espace nom que je dois ajouter mes project.VS 2008 Montrez-moi le message ajouter des références – shamim

+1

Regardez le lien que j'ai ajouté en bas, il y a un exemple plus complet. Il contient également le lien de téléchargement pour le pack HTML Agiliy. Vous aurez besoin de télécharger cela. Ajoutez la DLL à votre bin director, puis référencez-la dans votre projet vs. – Mantisimo

0

Vous pouvez analyser la table avec jQuery, créer une matrice de côté client ou de l'objet et l'envoyer au serveur avec un appel AJAX ou sous forme de post.

HTML:

<!DOCTYPE html> 
<html> 
<head> 
<script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<meta charset=utf-8 /> 
<title>JS Bin</title> 
<!--[if IE]> 
    <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> 
<![endif]--> 
</head> 
<body> 
    <table id="tableData"> 
    <tr id="tableHeader"> 
     <td>col1</td> 
     <td>col2</td> 
     </tr>  
     <tr id="tableRow"> 
     <td>data1row1</td> 
     <td>data2row2</td> 
     </tr> 
     <tr id="tableRow">   
     <td>data1row2</td> 
     <td>data2row3</td> 
     </tr> 
    </table> 
</body> 
</html> 

SCRIPT:

$(document).ready(function() { 
    //parse all the data 
    $('#tableData tr').each(function() { 
     if($(this).attr('id')=='tableHeader') 
     { 
      alert('this is the header row');   
     }  
     $('td', this).each(function() {    
       alert($(this).html()); 
     }); 

    }); 

    //post the form or send data via AJAX 

}); 
Questions connexes