2009-04-19 10 views
18

Supongamos que tengo el siguiente código HTML, ¿cómo puedo pasar la entrada del usuario para ejecutar (str) la función de JavaScript como argumento?¿Cómo pasar texto en un cuadro de texto a la función de JavaScript?

<body> 

<input name="textbox1" type="text" /> 
<input name="buttonExecute" onclick="execute(//send the user's input in textbox1 to this function//)" type="button" value="Execute" /> 

</body> 
+0

Gracias por todas las respuestas. :) – natch3z

Respuesta

26

Usted podría acceder el valor del elemento por su nombre:

document.getElementsByName("textbox1"); // returns a list of elements with name="textbox1" 
document.getElementsByName("textbox1")[0] // returns the first element in DOM with name="textbox1" 

Así:

<input name="buttonExecute" onclick="execute(document.getElementsByName('textbox1')[0].value)" type="button" value="Execute" /> 

O se asigna una ID para el elemento que se identifica y se puede acceder a ella con getElementById:

<input name="textbox1" id="textbox1" type="text" /> 
<input name="buttonExecute" onclick="execute(document.getElementById('textbox1').value)" type="button" value="Execute" /> 
1

document.getElementById ('TextBox1') Valor

+0

El cuadro de texto no tiene una identificación. – karim79

+1

Por supuesto, necesitaría hacer que textbox1 sea la identificación del elemento. – Chuck

2

Se podía obtener el valor de entrada en el onclick-evento de este modo:.

onclick="execute(document.getElementById('textbox1').value);" 

Usted, por supuesto, tiene que añadir una identificación a su cuadro de texto

10

A diferencia de pasar el texto como una variable, puede usar el DOM para recuperar los datos en su función:

var text = document.getElementsByName("textbox1").value; 
+1

Es 'getElementsByName' (plural). – Gumbo

+1

Yikes - lo arregló. –

+1

¿Por qué esta publicación fue downvoted ???? – rahul

1

Esto es lo que he hecho. (Adaptarse de todas sus respuestas)

<input name="textbox1" type="text" id="txt1"/> 
<input name="buttonExecute" onclick="execute(document.getElementById('txt1').value)" type="button" value="Execute" /> 

Funciona. Gracias a todos ustedes. :)

0

Usted puede obtener el valor de texto y Id con el siguiente ejemplo simple en dotNet programación

<html> 
     <head> 
     <script type="text/javascript"> 
      function GetTextboxId_Value(textBox) 
       { 
       alert(textBox.value); // To get Text Box Value(Text) 
       alert(textBox.id);  // To get Text Box Id like txtSearch 
      } 
     </script>  
     </head> 
<body> 
<input id="txtSearch" type="text" onkeyup="GetTextboxId_Value(this)" /> </body> 
</html> 
Cuestiones relacionadas