datové vazby webové služby veřejnosti url na rozbalovací nabídku v excelcontentApp

hlasů
1

Tady jsem vytvořil webovou službu a vzhledem k veřejné URL pro získávání dat z data.I napsal následující kód v kanceláři 365 developer náhled (NAPA) default.htm straně.

<!DOCTYPE html>
 <html>
 <head>
<meta charset=UTF-8 />
<meta http-equiv=X-UA-Compatible content=IE=Edge />
<title>DemoApplication</title>
<link rel=stylesheet type=text/css href=../Content/Office.css />
<!-- Add your CSS styles to the following file -->
<link rel=stylesheet type=text/css href=../Content/App.css />
<script src=https://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.1.min.js></script>
<script src=https://appsforoffice.microsoft.com/lib/1.0/hosted/office.js></script>
<!-- Add your JavaScript to the following file -->
<script src=../Scripts/App.js></script>
 </head>
 <body onload=GetData()>
    <select id=CbxArea style=width: 200px>
    <option>Select Area</option>
    </select>
    <input type=button value=submit id=btnsubmit/>        
</div>
  </body>
 </html>

Ponechání ladem kód je napsán v app.js souboru

Office.initialize = function (reason) {    
};
function GetArea(){
var ddlArea = $(#CbxArea);
        $.ajax({
            type: POST,
            url: http://192.168.3.252:8081/HaraveerWCF/ExcelDataService.asmx/GetAreaNames,
            contentType: application/json; charset=utf-8,
            //url:ExcelDataService.asmx/GetAreaNames,
            dataType: json,
            success: function (data) {
            for (i = 0; i < data.d.length; i++) {
                ddlArea.append($(<option></option>).val(data.d[i].AreaName).html(data.d[i].AreaName));
                }
            },
            failure: function (msg) {
                alert(msg);
            }
        });
}

Tam, kde jsem napsal mi wrong.Please pomoci out.Make jistý celkový kód je psán jen v on-line služby Office 365 portálu account.Not napsaný ve Visual Studiu.

Položena 01/02/2013 v 11:10
zdroj uživatelem
V jiných jazycích...                            


3 odpovědí

hlasů
0

S jQuery 1.4 a vyšší, můžete prostě udělat

for (i = 0; i < data.d.length; i++) {
   ddlArea.append($('<option/>', { value : data.d[i].AreaName }).text(data.d[i].AreaName);
}    
Odpovězeno 01/02/2013 v 11:17
zdroj uživatelem

hlasů
0

Jste udělali něco, můžeme říci, overridek možnosti html. Umísťujete hodnoty a znění jednotlivých možností:

for (i = 0; i < data.d.length; i++) {
  ddlArea.append($("<option></option>").val(data.d[i].AreaName)
                                       .text(data.d[i].AreaName));
}

Lze toho dosáhnout pomocí $.each():

$.each(data.d, function(i, v){
  ddlArea.append("<option></option>").val(v[i].AreaName).text(v[i].AreaName);
});
Odpovězeno 01/02/2013 v 12:08
zdroj uživatelem

hlasů
0

Možná jste narazit na JavaScriptu napříč doménami vydání datové jak se snažíte získat přístup ke vzdálenému adresu z vás Office 365. místě náhledu. V případě, že návratový typ požadavku na vzdálenou adresu je jsonp, pak si může být schopen potlačit problém datovou napříč doménami.

Poraďte se se svým prohlížeč Developer Tools (vyvolat ho s F12 klávesovou zkratku a pak se podívejte na kartě Network) nebo Firefox Firebug, pokud vzdálený URL server vrátí žádná data jsonp.

Odpovězeno 20/02/2013 v 11:29
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more