Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Problema caricamento usercontrol con Jquery e Ajax

    Buongiorno a tutti, ho un problema. Sto creando un sito formato da una pagina di default contentente un div dove ogni volta che clicco sul menu dovrebbe caricare lo usercontrol relativo al item menu selezionato. Ora il mio problema è che funziona tutto solo che il codice html dello usercontrol viene elaborato e visualizzato come una comune stringa. E' come se il desto non venisse codificato come html. Utilizzo un web service per la chiamata della funzione che mi carica lo usercontrol. Cosa sbaglio? Di seguito il codice da me utilizzato. Inoltre il div dove caricare lo usercotnrol si trova già all'interno di un form.

    web_service.cs
    codice:
    [WebMethod(EnableSession = true)] 
    public string GetControlHtml(string controlLocation) { 
        // Create instance of the page control
        Page page = new Page();
        // Create instance of the user control
        UserControl userControl = (UserControl)page.LoadControl(controlLocation); 
        //Add form to the page
        page.Controls.Add(userControl); 
        //Write the control Html to text writer
        StringWriter textWriter = new StringWriter(); 
        //execute page on server
        HttpContext.Current.Server.Execute(page, textWriter, false); 
        // Clean up code and return html 
        return CleanHtml(textWriter.ToString());
    } 
    
    private string CleanHtml(string html) {
        return Regex.Replace(html, @"<[/]?(form)[^>]*?>", "", RegexOptions.IgnoreCase); 
    }

    default.aspx
    codice:
    function getData(serviceURL, location) {
        $.ajax({
            type: 'POST',
            dataType: 'html',
            url: serviceURL,
            data: { controlLocation: '~/controls/' + location + '/' + location + '.ascx' },
            success: function (data) {
    
               if (data != null) {
                       $('#content').html(data);
                       //document.getElementById("content").innerHTML = data;
    
               }
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                       alert(errorThrown);
            }
    });
    Sto impazzendo aiutatemiiiii. e comunque grazie mille per l'aiuto in anticipoooooooo

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    metti un alert per vedere com'è valorizzato data e postalo... inoltre se devi semplicemente "riempire" un div ti consiglio di utilizzare la funzione load di jquery

  3. #3
    ecco il valore di data:
    codice:
    <?xml version="1.0" encoding="utf-8"?>
    <string xmlns="http://tempuri.org/">
    &lt;h3&gt;Benvenuto in Webeb Group&lt;/h3&gt;
    &lt;p&gt;Il sistema informativo delle aziende costituisce ormai un elemento determinante per il loro successo. La gestione 
    quotidiana dell’operatività, le sfide del mercato ed il ritorno sugli investimenti richiedono la presenza di 
    sistemi informatici efficienti. Il gruppo Webeb Group, con sede a Milano, opera nel settore IT dal 2007 con la missione di fornire servizi e 
    prodotti di qualità.&lt;/p&gt;
    &lt;p&gt;Webeb  Group è il partner ideale per la manutenzione e la gestione dell'informatica, perché fornisce supporto 
    ai Clienti con personale esperto e certificato ed a costi assolutamente competitivi.&lt;/p&gt;
    &lt;p&gt;Webeb Group è, infatti, interlocutore affidabile per le aziende che vogliono migliorare la propria efficienza e 
    produttività, ottimizzando gli investimenti nei settori informatico e dell' immagine, concentrandosi al 100% sul 
    proprio “Core Business”.&lt;/p&gt;
    &lt;p&gt;Il rapporto creato negli anni con i principali produttori di hardware e software consente di proporre ed 
    installare le migliori soluzioni presenti sul mercato per l’infrastruttura IT.&lt;/p&gt;
    
    &lt;div class="box-wlan"&gt;
        &lt;div class="box-wlan-intest"&gt;
            &lt;div class="green-bold"&gt;
                Web Design
            &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="box-wlan-intest"&gt;
            &lt;div class="green-bold"&gt;Engineering&lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="box-wlan-intest"&gt;
            &lt;div class="green-bold"&gt;Marketing&lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="box-wlan-intest"&gt;
            &lt;div class="green-bold"&gt;Assistenza&lt;/div&gt;
        &lt;/div&gt;
    
        &lt;div class="box-wlan-body"&gt;
            &lt;div class="box-wlan-body-text"&gt;
                &lt;p&gt;La realizzazione di un sito web non ha solo l'utilizzo di biglietto da visita 
                online ma è utilizzabile anche come portfolio, vetrina ma anche come negozio online.&lt;/p&gt;
                &lt;p&gt;L'esperienza accumulata ci permette di esprimere i desideri dei clienti, 
                offrendo supporto d'alto livello e soluzioni adeguate.&lt;/p&gt;
            &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="box-wlan-body"&gt;
            &lt;div class="box-wlan-body-text"&gt;
                &lt;p&gt;Questo settore si integra con altri servizi offerti, il tutto per sfruttare al meglio quello che il web può 
                offrire alla comunicazione. Registrazione di domini, progettazione allo sviluppo di applicazioni web 
                (web application), assistenza, consulenza... questi sono alcuni dei servizi di engineering che offriamo alla 
                nostra clientela. &lt;/p&gt;
                &lt;p&gt;Visita la pagina dei prodotti e dei servizi per avere maggiori informazioni.&lt;/p&gt;
            &lt;/div&gt;
    
        &lt;/div&gt;
        &lt;div class="box-wlan-body"&gt;
            &lt;div class="box-wlan-body-text"&gt;
                &lt;p&gt;Oggi è necessario porsi degli obiettivi e a raggiungerli. Tali obiettivi vanno monitorati 
                e consolidati nel tempo. Ogni singola visita al sito o contatto può trasformarsi in un potenziale 
                cliente e tu devi avere a disposizione tutti gli strumenti perchè questo possa accadere.&lt;/p&gt;
            &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="box-wlan-body"&gt;
            &lt;div class="box-wlan-body-text"&gt;
                &lt;p&gt;Destinata sia al singolo privato sia all' azienda, l'assistenza informatica viene proposta anche con un tempestivo 
                servizio a domicilio: il personale del centro è infatti a disposizione per operazioni di start-up e montaggio, ma 
                anche per quanto riguarda la creazione di reti di dati o l'eventuale sostituzione di tutta la componentistica delle 
                apparecchiature.&lt;/p&gt;
            &lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
    
    
    </string>
    Ho provato ad utilizzare il load ma non carica assolutamente nulla a differenza di html che almeno scrive il codice. non so cosa fare. E' da due giorni che sto impazzendo.

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    quindi è un xml, perche vuoi caricarlo come html(dataType:html)?

    Mi pare ovvio che non funzioni...

  5. #5
    Il problema è che non ho idea di cosa fare o meglio come devo fare per avere il codice nel formato html oppure come devo fare per convertirlo in html. Mi potresti indirizzare tu? giusto per capire, perchè sono agli inizi

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    636
    in dataType metti xml e poi utilizza $.parseXML()

  7. #7
    Grazie mille ora funziona

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.