Введите во время сохранения области динамически
E.G.
#include <stdio.h>
#include <stdlib.h>
char *inputString(FILE* fp, size_t size){
//The size is extended by the input with the value of the provisional
char *str;
int ch;
size_t len = 0;
str = realloc(NULL, sizeof(char)*size);//size is start size
if(!str)return str;
while(EOF!=(ch=fgetc(fp)) && ch != '\n'){
str[len++]=ch;
if(len==size){
str = realloc(str, sizeof(char)*(size+=16));
if(!str)return str;
}
}
str[len++]='\0';
return realloc(str, sizeof(char)*len);
}
int main(void){
char *m;
printf("input string : ");
m = inputString(stdin, 10);
printf("%s\n", m);
free(m);
return 0;
}
Во-первых, выполните запрос для XML с $ .get, или однако Вы хотите. Затем:
clientID = $(myXML).find("client_id").text();
Чтобы исправить ожидаемый тип данных ответа на XML прямо в запросе, установите для параметра dataType
значение «xml». Если вы этого не сделаете, jQuery использует заголовки ответа, чтобы сделать предположение.
Он поддерживается в функции $.ajax()
как часть объекта options
, а также в $.get()
и $.post()
:
jQuery.ajax( options )
jQuery.get( url, data, callback, type )
jQuery.post( url, data, callback, type )
Так что вы можете сделать это:
$.ajax({
type: 'GET',
url: "foo.aspx",
data: {
key: "value"
},
dataType: "xml",
success: function (xml){
var clientid = $(xml).find('client_id').first().text();
alert(clientid);
}
});
Обратите внимание, что начиная с jQuery 1.5 вы можете использовать более качественную версию вышеупомянутого запроса Ajax:
$.get("foo.aspx", {
key: "value"
})
.done(function (xml){
var clientid = $(xml).find('client_id').first().text();
alert(clientid);
});
Используйте что-то вроде этого:
$.ajax({ type: 'GET', url: 'test.xml', dataType: 'xml', success: function(xml){
$('response', xml).each(function() {alert($(this).find('client_id').text());});
}});
просто для дополнения, я использую $ .get:
$.get($('file.xml').val(),{ } , doSomethingWithData);
function doSomethingWithData (data) {
$(data).find("marker").each(function() {
var marker = $(this);
alert(marker.attr("lat"));
});
здесь tpicall used request.responseXML - это данные в этом случае, и вы должны инкапсулируйте его в $ (data), чтобы он работал (это заставляет меня ломать голову около 3 часов; S)
// alert(markerh);
}