提交不带格式

时间:2017-02-11 12:00:42

标签: javascript html forms

我正在创建一个网站游戏,目前我正在努力解决一些我称之为“对话”的问题。

最初我尝试通过创建表单元素来解决这个问题,但是点击输入或提交它最终会导致页面刷新,这会破坏所有内容。

所以我使用了inpute类型的文本,没有看起来像这样的形式:

You are 
<input type="text" id="dead">
<input type="submit" onclick="dead()">

和死函数目前看起来像这样,稍后它会检查某个值,如果值为true,它将运行另一个代码:

var talk = document.getElementById("dead").value;

function dead() {
alert(talk);
}

我不知道如何保存表单中的输入,以便JS检测到它,然后在布尔检查中用作变量。我怎么解决这个问题?如果有一种方法可以使用表单标记而不刷新也可以工作的页面。

2 个答案:

答案 0 :(得分:0)

您可以像这样处理表单的提交事件:

document.getElementById('yourFormId').onsubmit = function(e) {
    // your code goes here...

    e.preventDefault(); // this will prevent the default operation of your form within this event
    return false;
}

或者创建一个函数:

function handleForm(e) {
    // your code goes here...

    e.preventDefault();
    return false;
}

并将其添加到您的表单标记中:

<form onsubmit="return handleForm(this);">

答案 1 :(得分:0)

为了能够在不刷新页面的情况下发送一些值,您可以使用异步JavaScript + XML(AJAX),如果您在没有某些框架的情况下使用纯Javascript,您可以看到关于Ajax的良好文档。 但我当然建议使用像Jquery这样的框架来使你的作品更容易