我有一个内部有几个选择的表单.我正在将select2 jquery插件应用于这样的选择:
$("select.company_select, select.positions_select").select2();
Run Code Online (Sandbox Code Playgroud)
select的工作正常,但我有这个代码自动提交我的表单(我在表单标签上有autosubmit类).
var currentData;
$('.autosubmit input, .autosubmit select, .autosubmit textarea').live('focus', function () {
currentData = $(this).val();
});
$('.autosubmit input, .autosubmit select, .autosubmit textarea').live('change', function () {
console.log('autosubmiting...');
var $this = $(this);
if (!currentData || currentData != $this.val()) {
$($this.get(0).form).ajaxSubmit(function (response, status, xhr, $form) {
currentData = "";
});
}
});
Run Code Online (Sandbox Code Playgroud)
问题是,使用select2,更改或焦点事件根本不会触发.如果我删除了select2,那么事件会被完全解雇.
我究竟做错了什么?
我有关于.NET连接器的MySqlParameter的这个问题.
我有这个问题:
SELECT * FROM table WHERE id IN (@parameter)
Run Code Online (Sandbox Code Playgroud)
而MySqlParameter是:
intArray = new List<int>(){1,2,3,4};
...connection.Command.Parameters.AddWithValue("parameter", intArray);
Run Code Online (Sandbox Code Playgroud)
这个有可能?是否可以将int数组传递给单个MySqlParameter?另一个解决方案是将int数组转换为类似"1,2,3,4"的字符串,但是当我将它传递给MySqlParameter并将其识别为字符串时,它会像sql查询一样放入"1 \,2 \,3 \,4",这不会返回预期值.
@ UPDATE:似乎mysql连接器团队应该更努力地工作.
我有一个通用列表,正在被调用4次的方法中使用.此方法使用此通用列表的值在PDF中写入表.
我的问题是我需要在方法中反转这个通用列表,但我调用方法4次,所以每次调用方法时列表都被反转,我不想要...我该怎么做?有没有办法扭转列表而不改变原始?
这是在方法内:
t.List.Reverse();
foreach (string t1 in t.List)
{
//Some code
}
Run Code Online (Sandbox Code Playgroud) 我在MVC5中有一个带有OWIN身份的Web应用程序,我想知道是否有可能从代码更改用户密码而不知道旧密码.因为该方法ChangePassword
要求userId
,oldPassword
和newPassword
.
我有我的代码(C#)和3个布尔int32
那要看是什么布尔是财产true
和false
.什么是最好的方式,以另一种方式实现这一点,而不是如下语句:
if(a && b && !c)
d = 1;
if(a && !b && !c)
d = 2;
//etc.. ect...
Run Code Online (Sandbox Code Playgroud)
编辑:3个布尔值必须具有可能的每个组合来设置int32值.
编辑2:对于两个不同的布尔比较,"d"的值可以相同.
我有一个剃刀视图(Framework 4.5,MVC 5)和一个html输入类型=复选框,其值等于模型布尔值,但它不是true或false,而是绑定"value".
这是我的代码:
for (int index = 0; index < Model.Item1.Locations.Length; index++)
{
WSTupleOfInt32StringStringBoolean location = Model.Item1.Locations[index];
<div class="editor-field">
<input id="@string.Format("presentation.ServiceInfoes[{1}].Locations[{0}].Key", index, Model.Item2)" type="checkbox" value="@location.ThirdValue" name="@string.Format("presentation.ServiceInfoes[{1}].Locations[{0}].ThirdValue", index, Model.Item2)" />
</div>
<div class="editor-label">
<label for="@string.Format("presentation.ServiceInfoes[{1}].Locations[{0}].Key", index, Model.Item2)">@location.FirstValue</label>
@if (!string.IsNullOrEmpty(location.SecondValue))
{
<a href="@string.Format("//maps.google.com/?q={0}", location.SecondValue)" target="_blank"><img alt="@location.SecondValue" src="@string.Format("//maps.google.com/maps/api/staticmap?center={0}&markers=color:blue|{0}&zoom=15&size=64x64&sensor=false", location.SecondValue)" /></a>
}
</div><br />
}
Run Code Online (Sandbox Code Playgroud)
这location.ThirdValue
是布尔属性,对该属性进行调试它很好..但在HTML中我得到value="value"
而不是value="false"
.
发生了什么?
我的网站(MVC3,C#)和条形码阅读器有这个问题.在我的形式我有这样的事情:
<ajax form....>
<input type=text />
<div id=list>
</div>
</form>
Run Code Online (Sandbox Code Playgroud)
并且输入用条形码阅读器填充并自动提交带有ajax的表单,用id = list填充div.我的问题是,使用chrome和ie,在文本被提交后,下载窗口出现在chrome中,收藏夹窗口出现在ie中.我想这是因为条形码阅读器在文本中加入[CR] [LF]并打开那些窗口.我认为条形码阅读器在某个时刻插入了一个ctrl-j,因为该组合打开了chrome中的下载窗口和ie中的收藏夹,但是使用firefox下载窗口不会打开(也是ctrl-j).
我不想告诉我的客户配置条形码阅读器,以便我的页面工作,所以我想在javascript中解决问题可能解决了这个问题.
谢谢!!!
我有关于淘汰赛中的foreach和第一项的问题.我想跳过第一个并迭代下一个项目.
主要问题是我想做这样的事情:
<div data-bind="text: ItemsArray[0].someProperty"></div>
<div data-bind="foreach: ItemsArray"> <!-- here i must skip the first item -->
<div data-bind="text: someProperty"></div>
</div>
Run Code Online (Sandbox Code Playgroud) 我有一个razor-mvc网站和表格上的几个选择.我将这个选择与jquery中的select2插件绑定如下:
$('select.company_select, select.positions_select').select2();
Run Code Online (Sandbox Code Playgroud)
我的表单是一个ajax表单(javascript的ajax,而不是Ajax.BeginForm).问题是,当我提交表单时,我添加另一个表单与第一个表单的提交值,但新表单上的选择不会应用select2插件.我知道这是正常的,因为新项目应该与.on()或.live()绑定,但我不知道该怎么做.
你能帮帮我吗?
我有一个名为loading的类,如下所示:
.loading {
display: none;
vertical-align: top;
margin: 0;
padding: 0;
background: url('../images/shared/loading_16x16.gif') center center no-repeat;
width: 16px;
height: 16px;
}
Run Code Online (Sandbox Code Playgroud)
使用以下html代码段:
<div id="loading" class="loading"></div>
Run Code Online (Sandbox Code Playgroud)
和我的jQuery代码(在文件就绪):
$.ajaxSetup({
beforeSend: function () {
$("#loading").show().children().show();
},
complete: function () {
$("#loading").hide().children().hide();
}
});
Run Code Online (Sandbox Code Playgroud)
但show()
根本不工作.即使我从chrome开发人员窗口触发它.在Chrome开发人员窗口中,如果我取消选中display: none
加载类,则会显示标记.
发生了什么?
c# ×5
jquery ×4
html ×2
.net ×1
asp.net-mvc ×1
boolean ×1
css ×1
events ×1
foreach ×1
generic-list ×1
if-statement ×1
javascript ×1
knockout.js ×1
mysql ×1
onchange ×1
owin ×1
razor ×1
reverse ×1