我需要在Opencart搜索中的输入元素中添加类(在 header.tpl 中)
HTML CODE:
<input type="text" name="search" id="input-search" class=""/>
JQUERY CODE:
<script type="text/javascript">
$(document).ready(function() {
$("#input-search").keyup(function (e) {
if (e.keyCode == 13) {
$("#input-search").addClass("button-search");
}
});
});
</script>
我正在使用Opencart并重定向到搜索页面,您必须拥有 .button-search 类。我不想要提交按钮 当我在输入中添加一些文本然后当我按Enter时,脚本应该将类添加到输入并重定向到Opencart搜索页面。
答案 0 :(得分:1)
这就是你想要的伙伴。
代码:http://jsfiddle.net/webcarvers/xdt7g/1/ 预览:http://jsfiddle.net/webcarvers/xdt7g/1/embedded/result/
HTML
JS
$("#inputSearch").on('keypress',function (e) {
if (e.keyCode == 13) {
$("#inputSearch").addClass("buttonSearch");
$("p").text("Class added = " + $("#inputSearch").attr("class"));
window.location.replace("http://www.yahoo.com/")
}
});
答案 1 :(得分:0)
当按钮在表单中时,您可以提交它:
<script type="text/javascript">
$(document).ready(function() {
$("#input-search").keyup(function (e) {
if (e.keyCode == 13) {
$("#input-search").addClass("button-search");
$(this).closest('form').submit();
}
});
});
</script>
答案 2 :(得分:0)
你可以改为:
<script type="text/javascript">
$(document).ready(function() {
$("#input-search").keyup(function (e) {
var kc = e.keyCode || e.which;
if (kc == 13) {
$(this).addClass("button-search");// get the current context with 'this'
window.location.href = "../yoursearchpageurl?" + $(this).serialize();
}
});
});
</script>
正如您所提到的,您的页面中没有表单,所以当您将该类添加到按钮后,您可以按照$(this).serialize()
答案 3 :(得分:0)
您需要使用如下所示的事件委派方法:
$('body').on('keyup','#input-search', function (e) {
if (e.keyCode == 13) {
$(this).addClass("button-search");
}
});
答案 4 :(得分:0)
如果要执行的操作是重定向到包含input
值的网页,您可以执行以下操作window.location.href = "?search=" + this.value;
您的代码将如下:
<script type="text/javascript">
$(document).ready(function() {
$("#input-search").keyup(function (e) {
var kc = e.keyCode || e.which;
if (kc == 13) {
$("#input-search").addClass("button-search");
window.location.href = "?search=" + this.value;
}
});
});
</script>