JavaScript能否根据用户输入创建新功能?

时间:2015-02-19 14:34:58

标签: javascript html function user-defined-functions elements

我在HTML文档中有一个输入框,一个按钮和其他随机元素。我的问题是: JavaScript可以使用输入到输入框中的id,并在单击按钮时隐藏带有该ID的元素吗?请告诉我如何执行此操作。我正在创建一个基于某些按钮点击创建元素的程序,因此用户可以在不知道代码的情况下格式化html。我正在尝试添加动态函数,我完全不知道该怎么做,因为函数需要足够灵活才能使用它们中的输入。

我无法直接插入函数的原因是因为我希望按钮使用专门创建的功能来执行用户想要的操作。

我也不知道jquery,inly HTML JavaScript和CSS

2 个答案:

答案 0 :(得分:2)

是的,但你完全走错了路:你不需要创建一个新功能来响应用户输入来做到这一点。

您只需要在函数中使用用户输入。

function myEventHandler(event) {
    var user_input = document.getElementById('my_text_input').value;
    var user_selected_element = document.getElementById(user_input);
    if (user_selected_element) {
        user_selected_element.style.display = "none";
    }
}

document.getElementById('the_button').addEventListener('click', myEventHandler);

答案 1 :(得分:0)

您需要创建一个传递给按钮的点击处理程序的函数。单击按钮后,我们可以获取输入值并从那里处理它。这是一个有效的fiddle

function hideById() {
  var id = document.getElementById('id').value;
  document.getElementById(id).style.display = 'none';
}

document.querySelector("button").addEventListener("click", hideById);