Как использовать JSON используя формуляр, без другой программы и базы данных, единственного языка сценариев JavaScript?

Я это делал как активность, так как я изучаю язык сценариев JavaScript.

Согласно которому он говорит упражнение, это это:

Идея состоит в том, чтобы, когда нажмут на кнопку Registrar Студент, были захвачены следующие данные: код, имя, и пальчатое замечание. Нужен сохранять эти данные как объект студент в JSON, чтобы потом это использовать.

Здесь - код, который я имею по отношению к моменту (или jsfiddle):

function registro() {

	var infoEstudiante;

	codigoE = String(document.getElementById('codigo').value);
	nombreE = String(document.getElementById('nombre').value);
	notaE = parseFloat(document.getElementById('nota').value);

// prueba de como deberia quedar la informacion
	document.getElementById('codigo1').value = codigoE;
	document.getElementById('nombre1').value = nombreE;
	document.getElementById('nota1').value = notaE;

	 alert("El Estudiante ha sido registrado con exito");

function log(str) {
	var logEl = document.createElement("td");
	logEl.textContent = str;
	logEl.className = "logCSS"; 
	document.getElementById('otraprueba').appendChild(logEl);
	//document.body.appendChild(logEl);  prueba
}

log(codigoE); log(nombreE); log(notaE);

}
<h1>Registro de Estudiante</h1>

Codigo: 
<br><input type="text" id="codigo" value="" /><br>
Nombre: 
<br><input type="text" id="nombre" value="" /><br>
Nota: 
<br><input type="text" id="nota" value="" /><br>
<br>
<button onclick="registro()">Registrar Estudiante</button>
<button onclick="mostrar_promedio()">Mostrar Promedio</button>
<button onclick="mostrar_nota_mayor()">Mostrar Nota Mayor</button>
<button onclick="mostrar_nota_menor()">Mostrar Nota Menor</button>

<h1>Listado de Estudiantes</h1>

<table border="1" id="otraprueba">

	<td>Codigo</td><td>Nombre</td><td>Nota</td>
	<tr></tr>
    <td>
    <input type="text" id="codigo1" value="" disabled="" /></td>
    <td>
    <input type="text" id="nombre1" value="" disabled="" /></td>
    <td>
    <input type="text" id="nota1" value="" disabled="" /></td>
    <tr></tr>
	<td id="codigo12">debajo va child</td><td id="nombre12"></td><td id="nota12"></td>
	<tr></tr>
</table>
<div id="ultimaprueba"></div>

Вопрос: Как использовать JSON используя формуляр, без другой программы и базы данных, единственного языка сценариев JavaScript? И я хочу использовать это, чтобы доставать среднюю величину людей, которые присоединяются посредством бдительности и в равного: как создавать новый узел, который мог бы разделяться из-за 3 секций, так как он вытекает, но остается совсем дружным?

ВАЖНОЕ ЗАМЕЧАНИЕ: Я не знаю, почему не прокручивает изображение в окне код, где он, но вот то, что я делал в возвышенном и DW, и оно функционирует, только я это использую как ссылка, чтобы показывать информацию.

2
задан 20.01.2017, 07:43
0 ответов

Я не знаю точно того, что они просят у тебя, потому что это что-то смущенное, но здесь у тебя есть пример, от как предохранения данных в массиве посредством использования нотации языка сценариев JavaScript (JSON).

В конце каждого высшего введения те ученики, замечание которых было действительным (превращение parseFloat() он не возвратил один NaN) и вычисли среднее замечание.

Также я упорядочил функцию log() для того, чтобы он создал правильно новую линию с колонной из-за каждого принятого в доме параметра.

var estudiantes = [];

function log() {
  var logEl = document.createElement("tr");
  for (var i = 0; i < arguments.length; i++) {
    /* Creamos un nodo de texto HTML con escapado de etiquetas (seguro) */
    var texto = document.createTextNode(arguments[i]);
    var td = document.createElement('td');
    td.appendChild(texto);
    logEl.appendChild(td);
  }
  logEl.className = "logCSS";
  document.getElementById('otraprueba').appendChild(logEl);
}

function registro() {
  var codigoE = document.getElementById('codigo').value;
  var nombreE = document.getElementById('nombre').value;
  var notaE = parseFloat(document.getElementById('nota').value);

// prueba de como deberia quedar la informacion
  document.getElementById('codigo1').value = codigoE;
  document.getElementById('nombre1').value = nombreE;
  document.getElementById('nota1').value = notaE;
  /*alert("El Estudiante ha sido registrado con exito");*/
  log(codigoE, nombreE, notaE);
  /* Te separo la notación JSON para destacarla */
  estudiantes.push(
    {
      'codigo':codigoE,
      'nombre':nombreE,
      'nota':notaE
    }
  );
  console.log(estudiantes);
  var suma = 0;
  var numero = 0;
  for (var i in estudiantes) {
    if (!isNaN(estudiantes[i].nota)) {
      numero++;
      suma += estudiantes[i].nota;
    }
  }
  if (numero > 0) {
    alert("Nota media: " + (suma / numero));
  }
}
<h1>Registro de Estudiante</h1>

Codigo: 
<br><input type="text" id="codigo" value="" /><br>
Nombre: 
<br><input type="text" id="nombre" value="" /><br>
Nota: 
<br><input type="text" id="nota" value="" /><br>
<br>
<button onclick="registro()">Registrar Estudiante</button>
<button onclick="mostrar_promedio()">Mostrar Promedio</button>
<button onclick="mostrar_nota_mayor()">Mostrar Nota Mayor</button>
<button onclick="mostrar_nota_menor()">Mostrar Nota Menor</button>

<h1>Listado de Estudiantes</h1>

<table border="1" id="otraprueba">

	<td>Codigo</td><td>Nombre</td><td>Nota</td>
	<tr></tr>
    <td>
    <input type="text" id="codigo1" value="" disabled="" /></td>
    <td>
    <input type="text" id="nombre1" value="" disabled="" /></td>
    <td>
    <input type="text" id="nota1" value="" disabled="" /></td>
    <tr></tr>
	<td id="codigo12">debajo va child</td><td id="nombre12"></td><td id="nota12"></td>
	<tr></tr>
</table>
<div id="ultimaprueba"></div>
0
ответ дан 03.12.2019, 17:36
  • 1
    Ooook, Спасибо!!! это, если оно я функционировало, сейчас, только чтобы понимать, там было должно использовать console.log(estudiantes); для того, чтобы он сохранял ainfor студентов, и потом выражать alert? Другая вещь, эта часть консоли смогла помещать ее отдельно, чтобы botó ее добавил в; n как funció n и для других вещей такие функции как высокое и низкое замечание? –  20.01.2017, 19:59
  • 2
    Я, лично, ненавижу alert(), предпочитаю видеть какую-то визуальную помощь нового реестра, но мочь добавлять немедленно следующего. Ясно, что ты можешь делать это добавления má s функции. Даже botó n обновления, чтобы переделывать таблицу (удалять линии и вновь вводить их начиная с данных, хранившихся в переменной). –  20.01.2017, 20:03
  • 3
    Очень интересный, я это приму во внимание больше, что я вхожу в этот мир, он этому помогает много, спасибо! –  21.01.2017, 06:47

Захвати данные и сохраняй их в json, потом пробеги json и думал tr с Вашим td в зависимости от данных, что у него есть json, смотри пример

function registro() {

var infoEstudiante = {};

codigoE = String(document.getElementById('codigo').value);
nombreE = String(document.getElementById('nombre').value);
notaE = parseFloat(document.getElementById('nota').value);

infoEstudiante['codigo'] = codigoE;
infoEstudiante['nombre'] = nombreE;
infoEstudiante['nota']   = notaE;

function log(info) {
var logEl = document.createElement("tr");

    for (var i = 0; i < info.length; i++) {
        logEl.createElement("td");
        logEl.getElementsByTagName('td')[i].textContent = info[i];
    };
    logEl.className = "logCSS"; 
    document.getElementById('otraprueba').appendChild(logEl);

    }
}

log(infoEstudiante)

Я надеюсь, что он подает тебя, привет.

0
ответ дан 03.12.2019, 17:36

Теги

Похожие вопросы