2015-04-22 2 views
0

У меня есть форма с несколько значений в зависимости от которых выбранJavascript преобразовать объект в строку

<form action="#"> 
    <select id="tropa1" name="tropa1"> 
     <option value="rec_b_unit">Case1</option> 
     .... 
     <option value="rec_z_unit">Case20</option> 
    </select> 
    <input id="go" type="button"> 
</form> 

Теперь скрипт

$(document).ready(function() { 

    $("#go").click(function() { 

     // Obtener la referencia a las listas 
     var lista1 = eval(document.getElementById("tropa1")); 
     // Obtener el valor de la opción seleccionada 
     var valort1 = eval(lista1.options[lista1.selectedIndex].value); 
     var cadena = String(valort1); 
     console.log("PHP: " + String(valort1)); 
     if (cadena.indexOf('z') != -1) { 
      // value selected in options does not contain 'z' 
      console.log("DOES NOT CONTAIN Z"); 
      console.log(cadena); 

      confront(nu1, valort1, nu2, valort2) 

     } else { 
      //// value selected in options contains 'z' 
      console.log("CONTAINS Z"); 
      console.log(cadena); 
     } 
    }) 

}); 

Я попытался сделать это, но консоль возврата: [объект Object] и не показывать строку. , даже используя функцию String() или eval() для преобразования объекта в строку

+0

Почему вы думаете, что 'eval' преобразует объект в строку? – Bergi

+2

Вам не нужны все эти утверждения 'eval'. Что вы пытаетесь достичь здесь? – CodingIntrigue

+0

Поскольку вы используете JQuery, вам может понадобиться изучить метод 'serialize' JQuery. https://api.jquery.com/serialize/ – xDaevax

ответ

0

Если вы хотите отобразить содержимое своего объекта в консоли, вы можете использовать console.dir().

Если вы хотите функцию, которая возвращает строку, вы можете переопределить функцию toString().

Смежные вопросы