Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基本表单-Javascript代码不工作_Javascript_Forms - Fatal编程技术网

基本表单-Javascript代码不工作

基本表单-Javascript代码不工作,javascript,forms,Javascript,Forms,我很难让这个代码正常工作。我正在尝试从放入表单的任何文本创建URL。例如,如果您在文本字段中提交“Hello”,它将导致“.”任何关于这不起作用的指示都将被感激 代码 查询: 提交: 函数URL() { var x=document.search.query.val(); 文件。写(“http://www."); 文件。编写(x); document.write(“.com/”); 返回false; } 您设置了x变量,但参考了未定义的查询变量。保持名称一致。您可以修改javascript。我

我很难让这个代码正常工作。我正在尝试从放入表单的任何文本创建URL。例如,如果您在文本字段中提交“Hello”,它将导致“.”任何关于这不起作用的指示都将被感激

代码


查询:
提交: 函数URL() { var x=document.search.query.val(); 文件。写(“http://www."); 文件。编写(x); document.write(“.com/”); 返回false; }
您设置了
x
变量,但参考了未定义的
查询
变量。保持名称一致。

您可以修改javascript。我建议您使用jQuery

function modify_url(){
        var q = $('input[name="query"]');

        q.val('http://www.' + q.val() + '.com');
        return true;
    }

回答:

<form>
Query: <input type="text" id="query" name="query"/><br>
Submit: <input type="submit" value="Submit" onclick="getURL()"/>
</form>

<script type="text/javascript">
   function getURL()
    {
    var x = document.getElementById("query").value;
    alert(x); //Debug statement
    }
</script>

查询:
提交: 函数getURL() { var x=document.getElementById(“查询”).value; 警报(x);//调试语句 }
对。不知道这里发生了什么,所以我从头重写了它。这是可行的,我测试了它,至少使用了
警报

可能发生的事情:

<form>
Query: <input type="text" id="query" name="query"/><br>
Submit: <input type="submit" value="Submit" onclick="getURL()"/>
</form>

<script type="text/javascript">
   function getURL()
    {
    var x = document.getElementById("query").value;
    alert(x); //Debug statement
    }
</script>
我认为javascript函数可能需要以小写字母开头

学校:

JavaScript区分大小写。函数关键字必须用 小写字母,并且必须使用相同的 函数名中使用的大写字母

我从表单中删除了
操作
,因为它很可能试图找到该文件并激活该文件中的javascript代码。我删除了
post
,因为这在我的电脑上搞砸了,可能是因为它是在离线浏览器模式下运行的(也就是说,实际上不像post那样使用HTTP请求)


onclick
全是小写,而不是camelcase,这可能也导致了一些问题。我总是使用
onclick
,而不是使用
表单onsubmit
,因为通常您的表单需要链接到
.PHP
文件,而使用按钮的
onclick
允许额外的灵活性。

使用
.value
而不是
val()
,这就是jQuery



请参阅:

脚本标记是否已关闭?是的,忘记将其粘贴到中。对不起,您定义了一个变量“x”,但不要使用它。使用变量“query”,但不定义它。我觉得你没有真正向我们展示你的真实代码。你和乔都是对的,我没有使用x变量。但是,在按submit时,没有任何操作持续。让我输入完整的代码,稍等片刻。您是正确的,Joe,谢谢。当我按submit时,它只添加“../jsTest.html?query=INPUT”,而不更改页面的实际内容。你知道为什么会发生这种情况吗?添加
返回false到函数末尾。很抱歉,我正在使用手机,无法编辑我的答案。我仍然发现查询直接转到URL的末尾,并且没有显示预期的结果。我感谢你的帮助!您还需要更改函数调用
onsubmit=“return URL()”
以及返回false.Nope的URL函数。我想知道这是否与表单操作有关。我应该将提交流转到另一个页面吗?在离开培训轮之前,首先让他们了解底层内容。因此,我尝试在这里使用val,并将我的变量匹配起来,使其更有意义。但是,我仍然发现查询直接转到URL的末尾,而没有显示结果。@mkayen我已经纠正了错误,我认为这可能会起作用,但我自己还没有尝试过。我的答案是纯javascript(没有jquery),我已经包含了一个调试语句,它将使用一个弹出框告诉您
query
字段的
值是什么。我仍然在这里遇到一些问题。事实上,警报(x)没有发生。谢谢你的帮助,我真的很感激当我点击页面上的提交时,警报不会出现,也不会出现任何结果。我写函数的方式一定有问题。@mkayen-aha。这就是我们进行调试的原因。我觉得这里发生了一些奇怪的事情。这太棒了,谢谢!您使用getURL()而不是URL()有什么原因吗?URL()是内置的JS函数吗?另外,JS中第6行的用途是什么?我承认我在
URL
方面遇到了问题,所以选择了
getURL
。第6行将id为
result
div
标记的内容设置为url。这被认为是比
document.write
以及
console.log(res)更好的做法
是一个调试语句,它的侵入性比警报小。请随意取下它。