使用内联函数更改输入值

时间:2019-02-17 11:38:38

标签: javascript callback

我有一个输入,我想访问该输入的值并使用内联回调函数对其进行更改。由于某些原因,我无法选择具有id或class或其他任何内容的输入,因此我必须使用回调函数 我的输入:

<input type = 'text' name = 'input_name' onkeyup = 'my_func()' /> 

有了这个,我可以访问该值并将其发送到my_func,但是我不能更改它

<input type = 'text' name = 'input_name' onkeyup = 'my_func(this.value)' />


function my_func(value){
 alert(value);
 }
在上面的功能中

,当用户键入某些内容时,我想更改输入的值。 我该如何更改?

4 个答案:

答案 0 :(得分:1)

您可以像下面这样直接将JavaScript编写到<input type = 'text' name = 'input_name' onkeyup = 'this.value="custom text"' />事件中:

this

或者,您可以将.value传递到函数中,然后在函数中修改function my_func(elem) { elem.value = "custom text"; }属性:

<input type='text' name='input_name' onkeyup='my_func(this)' />
oninput

注意:目前,只有放开键,您的事件才会触发。考虑使用onkeyup事件而不是function my_func(elem) { elem.value = "custom text"; }事件:

<input type='text' name='input_name' oninput='my_func(this)' />
/collections/COLLECTION_HANDLE/products/PRODUCT_HANDLE

答案 1 :(得分:0)

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input

value = The input's current value

<input type = 'text' name = 'input_name' onkeyup = 'my_func(this)' />


function my_func(input){
   input.value = "hello!"
}

答案 2 :(得分:0)

您可以在函数中传递元素并在函数中更改值

function my_func(e){
e.value="hey!"
 alert(e.value);
 }
<input type = 'text' name = 'input_name' onkeyup = 'my_func(this)' />

答案 3 :(得分:0)

您可以为输入提供一个id属性,并使用document.getElementById方法对其进行访问。然后,您可以使用它来更改输入的值。

类似

document.getElementById('inputID')。value ='hello';