use*_*625 6 javascript onclick
我在这里有这个文本字段和按钮
<input name="txtSearch" type="text" id="txtSearch" class="field" />
<input type="submit" name="btnSearch" value="" id="btnSearch" class="btn" onclick="javascript:SubmitFrm()" />
Run Code Online (Sandbox Code Playgroud)
当用户点击提交按钮时,假设该功能正在运行
<script type="text/javascript">
function SubmitFrm(){
var Searchtxt = document.getElementById("txtSearch").value();
window.location = "http://www.example.com/search/?Query=" + Searchtxt;
}
</script>
Run Code Online (Sandbox Code Playgroud)
但没有任何反应,我期望发生的是当用户点击提交按钮时,从搜索文本框中取值并将用户重定向到网址+搜索文本框的值...
我究竟做错了什么?
Fré*_*idi 25
您的代码中存在几个问题:
您正在处理click提交按钮的事件,其默认行为是将请求发布到服务器并重新加载页面.您必须通过false从处理程序返回来禁止此行为:
onclick="SubmitFrm(); return false;"
Run Code Online (Sandbox Code Playgroud)value 无法调用,因为它是属性,而不是方法:
var Searchtxt = document.getElementById("txtSearch").value;
Run Code Online (Sandbox Code Playgroud)您要在查询字符串中发送的搜索查询必须进行编码:
window.location = "http://www.mysite.com/search/?Query="
+ encodeURIComponent(Searchtxt);
Run Code Online (Sandbox Code Playgroud)这样做解决了我的问题
<script type="text/javascript">
function SubmitFrm(){
var Searchtxt = document.getElementById("txtSearch").value;
window.location = "http://www.mysite.com/search/?Query=" + Searchtxt;
}
</script>
Run Code Online (Sandbox Code Playgroud)
我.value();改为.value;取出()
我没有更改文本字段或提交按钮中的任何内容
<input name="txtSearch" type="text" id="txtSearch" class="field" />
<input type="submit" name="btnSearch" value="" id="btnSearch" class="btn" onclick="javascript:SubmitFrm()" />
Run Code Online (Sandbox Code Playgroud)
奇迹般有效。
| 归档时间: |
|
| 查看次数: |
108546 次 |
| 最近记录: |