检查是否已单击两个元素,并在Javascript的文本框中输入了值

时间:2013-07-14 02:37:52

标签: javascript

以下是我正在谈论的内容的演示 - http://jsfiddle.net/MatthewKosloski/qLpT9/

如果单击“Foo”,并且输入中输入了一个数字,并且单击了“发送”,我想执行代码。

<h1>Foo</h1>

<input type="text" id="amount" placeholder="Enter in a number."/>
<button id="send">Send</button>

我很确定我正在过度思考这个问题,我很感激这个简洁问题的帮助。

4 个答案:

答案 0 :(得分:0)

根据你的陈述&amp;采取一些假设,尝试这种方式:

(执行两次功能 - 当文本发生变化或点击按钮时)。

<强> HTML:

<h1 id="">Foo</h1>

<input type="text" id="amount" placeholder="Enter in a number."/>

<button id="sendBtn">send</button>

<强> JS:

document.getElementById("amount").addEventListener("change",poorRatingCalculation);
document.getElementById("sendBtn").addEventListener("click",poorRatingCalculation);

function poorRatingCalculation() {

    var rating = document.getElementById("amount").value;

    if(rating=="poor")  alert("Poor Service");
}

DEMO: http://jsfiddle.net/wTqEv/

答案 1 :(得分:0)

一个更好的,自包含的例子:

http://jsfiddle.net/qLpT9/7/

(function()
{
    var clicked = false;

    var header = document.getElementById("header");
    var amount = document.getElementById("amount");
    var send = document.getElementById("send");

    header.addEventListener("click", function()
    {
        clicked = true;
    });

    send.addEventListener("click", function()
    {
        if(!clicked)
        {
            return
        }

        // Foo has been clicked

        var value = amount.value;

        console.log(value;)
    });

})();

答案 2 :(得分:0)

试试这个:jfiddle link

var send = document.getElementById("send");
var h1 = document.getElementsByTagName("h1");

var foo_clicked = 0;

h1[0].onclick = function(){foo_clicked += 1; };

send.onclick = function(){
    if(document.getElementById("amount").value !='' && foo_clicked >0 )
    alert ('poor rating');

};

答案 3 :(得分:-1)

这是你在找什么?

http://jsfiddle.net/qLpT9/5/

function poorRatingCalculation(){
        if(myInput.value) {
            alert(myInput.value);
        }
 }

        var foo = document.getElementById("foo"),
            myInput = document.getElementById("amount");

  foo.addEventListener("click", poorRatingCalculation, false)