我试图使用jQuery触发上传框(浏览按钮).
我现在尝试的方法是:
$('#fileinput').trigger('click');
Run Code Online (Sandbox Code Playgroud)
但它似乎没有用.请帮忙.谢谢.
我使用jquery 扩展函数来扩展类原型.
例如:
MyWidget = function(name_var) {
this.init(name_var);
}
$.extend(MyWidget.prototype, {
// object variables
widget_name: '',
init: function(widget_name) {
// do initialization here
this.widget_name = widget_name;
},
doSomething: function() {
// an example object method
alert('my name is '+this.widget_name);
}
});
// example of using the class built above
var widget1 = new MyWidget('widget one');
widget1.doSomething();
Run Code Online (Sandbox Code Playgroud)
有一个更好的方法吗?是否有一种更简洁的方法来创建上面的类只有一个语句而不是两个?
在我的网络应用程序中,我使用jQuery的$.getJSON()方法提交了一些表单字段.我在编码方面遇到了一些问题.我的应用程序的字符集是charset=ISO-8859-1,但我认为这些字段是提交的UTF-8.
如何设置$.getJSON调用中使用的编码?
我有一个id为activelist的复选框
我尝试了以下但似乎没有工作(我在下面):
$(document).ready(function () {
$('#activelist :checkbox').change(function () {
alert('changed');
});
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" id='inactivelist' value="inactivelist" />Run Code Online (Sandbox Code Playgroud)
我们正在使用的内容即自动完成的jQuery插件乔恩Zaefferer,并试图验证有效的选项输入.
该插件具有result()事件,该事件在进行选择时触发.这没关系,但是当用户点击时我需要检查文本框中的值.所以我们尝试了.change()和.blur()事件,但它们都存在问题:当你点击结果div中的一个条目('suggest'列表)时,.change()和.blur()事件触发,这是在插件向文本框写入值之前,因此此时无需验证.
有人可以帮我配置事件,所以每当有人点击,但不是在结果框中我可以检查框中的有效值.如果这是错误的方法,请通知我正确的方法.我们最初使用此插件是因为它的'mustMatch'选项.此选项似乎并不适用于所有情况.很多时候,有效的条目将被写入文本框,而被插件清除为无效,我无法确定原因.
基本代码示例:
<html>
<head>
<title>Choose Favorite</title>
<script language="JavaScript" src="jquery-1.3.2.min.js" ></script>
<script language="JavaScript" src="jquery.autocomplete.min.js" ></script>
<script>
$(".suggest").autocomplete("fetchNames.asp", {
matchContains:false,
minChars:1,
autoFill:false,
mustMatch:false,
cacheLength:20,
max:20
});
$(".suggest").result(function(event, data, formatted) {
var u = this;
// Check value here
});
/* OR */
$(".suggest").change(function(me) {
//check value here
});
</script>
</head>
<body>
<label for="tbxName">Select name (I show 10):</label><br />
<INPUT type="text" id="tbxName" name="tbxName" class="suggest"><br />
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 我正在使用Bootstrap Select(http://silviomoreto.github.io/bootstrap-select/)显示我网站每个部分的Font-Awesome图标下拉列表.
我添加了添加新部分的功能 - 当点击添加按钮时,会添加一个新部分(上一部分的副本).在本节中,Bootstrap Select不起作用.
我尝试重新启动它,如:
var select = $('[name="section['+ numbersection +'][section_icon]"]');
$(select).selectpicker('destroy');
$(select).selectpicker({
showIcon: false
});
Run Code Online (Sandbox Code Playgroud)
但这不起作用,因为detroy方法似乎没有触发.有没有办法在动态添加的元素上重新启动Bootstrap Select?
$cartProducts = explode(',', $prodID);
echo count($cartProducts)
Run Code Online (Sandbox Code Playgroud)
var_dump的输出($ cartProducts); 是:
`array(1) { [0]=> string(0) "" }
Run Code Online (Sandbox Code Playgroud)
这给了我一个$ count值,但是数组是空的,或者至少我的数据库列是空的.
我尝试过以下方法:
if(empty($cartProducts)){
echo '0';
} else{
$count = count($cartProducts);
}
Run Code Online (Sandbox Code Playgroud)
但我得到了相同的结果:$ count = 1
Jeez我在这里错过了什么?
这是第二个最简单的翻转效果,但我找不到任何简单的解决方案.
通缉:我有一个项目列表和幻灯片列表(DIV).加载后,应选择第一个列表项(粗体),并且第一个幻灯片应该是可见的.当用户将鼠标悬停在另一个列表项上时,应该选择该列表项并显示相应的幻灯片.
以下代码有效,但很糟糕.我怎样才能以优雅的方式获得这种行为?jquery有几十个动画和复杂的翻转效果,但我没有想出一个干净的方式来实现这种效果.
<script type="text/javascript">
function switchTo(id) {
document.getElementById('slide1').style.display=(id==1)?'block':'none';
document.getElementById('slide2').style.display=(id==2)?'block':'none';
document.getElementById('slide3').style.display=(id==3)?'block':'none';
document.getElementById('slide4').style.display=(id==4)?'block':'none';
document.getElementById('switch1').style.fontWeight=(id==1)?'bold':'normal';
document.getElementById('switch2').style.fontWeight=(id==2)?'bold':'normal';
document.getElementById('switch3').style.fontWeight=(id==3)?'bold':'normal';
document.getElementById('switch4').style.fontWeight=(id==4)?'bold':'normal';
}
</script>
<ul id="switches">
<li id="switch1" onmouseover="switchTo(1);" style="font-weight:bold;">First slide</li>
<li id="switch2" onmouseover="switchTo(2);">Second slide</li>
<li id="switch3" onmouseover="switchTo(3);">Third slide</li>
<li id="switch4" onmouseover="switchTo(4);">Fourth slide</li>
</ul>
<div id="slides">
<div id="slide1">Well well.</div>
<div id="slide2" style="display:none;">Oh no!</div>
<div id="slide3" style="display:none;">You again?</div>
<div id="slide4" style="display:none;">I'm gone!</div>
</div>
Run Code Online (Sandbox Code Playgroud) 我有一个典型的CRUD操作应用程序
包含一行的apps/views/recipe/show.html.haml
= link_to "Delete", recipe_path, method: :delete, data: {confirm: "Are you sure?" }, class: "btn btn-default"
Run Code Online (Sandbox Code Playgroud)
如果我在apps/views/recipe/new.html.haml中创建一个新配方并重定向到apps/views/recipe/show.html.haml并点击Delete,那么它会给我一次确认并删除配方.
但是,如果我从典型类型的index.html.haml转到同一个显示页面,链接到单个配方,如http:// localhost:3000/recipes/29并点击删除按钮,确认将弹出3-4时间..(除非我首先刷新该页面,然后它会弹出确认一次).
我尝试添加jQuery-turbolinks,它仍然无法正常工作......
app/views/layouts/application.html.haml在%title下面有以下内容
= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true
= javascript_include_tag 'application', 'data-turbolinks-track' => true
= csrf_meta_tags
Run Code Online (Sandbox Code Playgroud)
不知道如何解决它,所以它不会弹出几次
编辑:即使我通过传递@recipe修复代码后仍然是相同的行为
= link_to "Delete", recipe_path(@recipe), method: :delete, data: {confirm: "Are you sure?" }, class: "btn btn-default"
Run Code Online (Sandbox Code Playgroud)
编辑2: 如果我一起删除turbolinks它的工作原理buttTurbolinks在你的web应用程序中更快地生成以下链接,据我所知在大多数Rails项目中使用.所以试着看看是否有解决方法?看起来像是一件非常典型的事情.
编辑3:
我添加了jQuery-turbolinks
的Gemfile
gem 'jquery-turbolinks'
Run Code Online (Sandbox Code Playgroud)
JavaScript清单文件,按此顺序:
//= require jquery
//= require jquery.turbolinks
//= require jquery_ujs
//= require turbolinks
Run Code Online (Sandbox Code Playgroud)
确认不止一次弹出.必须有办法解决它?
编辑4: …
该datepicker功能仅适用于创建的第一个输入框.
我正在尝试通过克隆div包含它的那个来复制一个datepicker .
<a href="#" id="dupMe">click</a>
<div id="template">
input-text <input type="text" value="text1" id="txt" />
date time picker <input type="text" id="example" value="(add date)" />
</div>
Run Code Online (Sandbox Code Playgroud)
要初始化的日期选择器,根据jQuery UI的文档,我只有这样做$('#example').datepicker();,它的工作,但仅在与创建的第一个日期选择器.
复制的代码div如下:
$("a#dupMe").click(function(event){
event.preventDefault();
i++;
var a = $("#template")
.clone(true)
.insertBefore("#template")
.hide()
.fadeIn(1000);
a.find("input#txt").attr('value', i);
a.find("input#example").datepicker();
});
Run Code Online (Sandbox Code Playgroud)
最奇怪的是,document.ready我有:
$('#template #example').datepicker();
$("#template #txt").click(function() { alert($(this).val()); });
Run Code Online (Sandbox Code Playgroud)
如果我点击#txt它总是有效.
jquery ×9
javascript ×4
css ×2
ajax ×1
arrays ×1
autocomplete ×1
html ×1
json ×1
php ×1
select ×1
turbolinks ×1