我正在使用jQuery DataTable插件,但我担心脚本加载似乎需要一些时间,因此我的网页始终首先显示普通的html表,并且在完成所有脚本之后,该表将成为DataTable.我不认为这种外观是可以接受的,所以我希望能在这里得到一些建议.我是否可以使脚本更快,或者不显示前面的普通表?顺便说一下,我在_Layout.cshtml头标签的_Scripts局部视图中调用我的脚本
@Html.Partial("_Scripts")
Run Code Online (Sandbox Code Playgroud)
(更新)我试图隐藏表,并在数据表初始化后显示它,但是,我得到一个没有表头的数据表.知道为什么会这样吗?
$('#stocktable').hide();
// Initialize data table
var myTable = $('#stocktable').dataTable({
// Try styling
"sScrollX": "100%",
"sScrollXInner": "100%",
"bScrollCollapse": true,
// To use themeroller theme
"bJQueryUI": true,
// To use TableTool plugin
"sDom": 'T<"clear">lfrtip',
// Allow single row to be selected
"oTableTools": {
"sRowSelect": "single"
},
"fnInitComplete": function () {
$('#stocktable').show();
}
Run Code Online (Sandbox Code Playgroud) 我在Razor视图中使用if else来检查null值,如下所示:
@foreach (var item in Model)
{
<tr id="@(item.ShopListID)">
<td class="shoptablename">@Html.DisplayFor(modelItem => item.Name)
</td>
<td class="shoptableamount">
@if (item.Amount == null)
{
Html.Display("--");
}
else
{
String.Format("{0:0.##}", item.Amount);
}
</td>
</tr>
}
Run Code Online (Sandbox Code Playgroud)
但是,无论我的模型数量为null还是具有值,呈现的html都不包含任何数量的值.
我想知道为什么会这样.任何的想法?
谢谢...
编辑:
决定在控制器中做到:
// Function to return shop list food item amount
public string GetItemAmount(int fid)
{
string output = "";
// Select the item based on shoplistfoodid
var shopListFood = dbEntities.SHOPLISTFOODs.Single(s => s.ShopListFoodID == fid);
if (shopListFood.Amount == null)
{
output = "--";
}
else …Run Code Online (Sandbox Code Playgroud) 我有一个图像,当点击,我想链接到mailto:
<a id="mailto" href="mailto:hfms@live.com.my" target="_newtab" >
<img src="@Url.Content("~/Content/HomePage/email.png")" alt="email" /></a>
Run Code Online (Sandbox Code Playgroud)
但是,当前单击它后,它将启动电子邮件选项以选择mailto应用程序,一旦我选择,mailto链接将在当前选项卡中打开.这将导致用户离开应用程序.
所以,我希望页面发送电子邮件(通过gmail,yahoo等)在新标签页或窗口中打开.知道怎么做吗?我尝试了target ="_ newtab"和target ="_ blank",但两者都没有用.
任何帮助将不胜感激..谢谢......
(如果没有其他方法,jQuery方法也可以接受,谢谢)
我的主页上有一个图片横幅.我使用nivo滑块来显示图像幻灯片,它工作正常.
但是,我偶尔会注意到,firebug会为图像中的任何一个显示错误"Image corrupt or truncated",例如:banner1.png
但图像幻灯片仍然显示并且工作正常.知道为什么出现错误?
谢谢...
我在部分视图中使用了一些jquery,并意识到我需要将脚本引用放在局部视图中再次使jquery工作.
我想知道是否有任何方法可以"调用"布局页面中的所有脚本引用,所以我不需要在部分视图中复制它?
我试图搜索相关信息,并尝试使用@section存储脚本引用,但它似乎无法工作.
希望可以在这里得到一些指导...欣赏它......
目前我有一个Item表和一个ItemWaste表.两个表都有一些字段,例如:Name,Amount等.但ItemWaste表将有一个字段,即TimeWasted.我希望自动将Item表中的DELETED项插入ItemWaste表,同时将删除时间插入TimeWasted字段.
我不知道怎么做,是不是使用了触发器???
希望能在这里得到一些帮助...感谢任何反馈...谢谢......
我有一个显示表格的对话框,当我点击"删除"按钮时,我会弹出另一个对话框要求确认.目前这在第一次工作正常,但如果我第二次单击"删除"按钮,删除对话框将显示在第一个表对话框后面,因此它实际上对用户不可见.
我试图为两个对话框设置z-index,但我不知道它为什么只在第一次工作
以下是我的脚本示例:
// The 1st dialog
var $detaildialog = $('#tableplaceholder').dialog({
autoOpen: false,
modal: true,
width: '800',
height: 'auto'
});
// Some steps to set the url.. then open the dialog
$detaildialog.load(url, function () {
$('#loading').hide();
$detaildialog.dialog('open');
});
// Then, when delete action is called, open the second dialog
fnOnDeleting: function (tr, id, fnDeleteRow) {
var $dialog = $('#checkdeletedialog').dialog({
autoOpen: false,
modal: true,
title: 'Delete Confirmation',
zIndex: 90000
});
$dialog.dialog('open');
}
Run Code Online (Sandbox Code Playgroud)
我在这里做错了什么?
感谢任何帮助..谢谢:)
我以十进制(18,2)存储金额.但我的大部分数据实际上都是整数,只有几位小数.因此,当我显示表中每个项目的数量时,数字显示全部为3.00,4.00,5.00等.
我觉得将所有0显示为小数点有点奇怪.如果小数点为0,我希望在显示时格式化数字.
目前我显示的数量如下:
<td id="amnt@(item.FoodID)" class="amountfield">
@Html.DisplayFor(modelItem => item.FoodAmount)
</td>
Run Code Online (Sandbox Code Playgroud)
任何的想法??感谢每一个帮助......谢谢......
如何通过jquery检查字符串是否包含任何数值?
我搜索了很多例子,但我只能检查一个数字,而不是STRING中的数字.我想找到类似的东西$(this).attr('id').contains("number");
(p/s:我的DOM id将是Large_a(没有数值),Large_a_1(带数值)Large_a_2,等等)
我应该使用什么方法?
我需要使用jQuery将字段与正则表达式匹配.目前我正在使用:
onsubmit: function (settings, td) {
//select integers only
var intRegex = /[0-9 -()+]+$/;
var input = $(td).find('input');
var original = input.val();
if (original <= 0) {
Alert('The amount should be bigger than 0');
return false;
}
if (!original.match(intRegex)) {
Alert('Please enter a valid number');
return false;
}
else {
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
类似的字符串"abc"不通过检查.但无效字符喜欢@#$%或"/"确实通过了检查,这导致我的方法出错.
我正在寻找正则表达式:
火柴: 1.20, 1, 2.00, 3.1
不匹配: -1.2, abc, 1/2, $, @#$%
我浏览了正则表达式库,但是如果我放入(^\d*\.?\d*[0-9]+\d*$)|(^[0-9]+\d*\.\d*$)脚本中,我会收到语法错误...
我使用jquery对话框显示了很多表单,我希望在其上添加客户端验证.我通读了一些例子,说mvc 3已经以某种方式支持jquery客户端验证,但我尝试了包含必要的脚本,我的表单如下:
@using (Html.BeginForm("CreateFood", "Home", FormMethod.Post, new { id = "formData" }))
{
@Html.ValidationSummary(false, "Please fix these errors.")
Run Code Online (Sandbox Code Playgroud)
当我尝试提交我的表格而没有填写必填字段时,我仍然会得到任何消息.谁能给我更多的想法/解释/例子?
真的需要帮助...谢谢......
更新(在我的对话框的脚本中添加)
$createdialog.dialog("option", "buttons", {
"Cancel": function () {
//alert('Cancel');
$createdialog.dialog('close');
},
"Submit": function () {
var frm = $('#formData');
$.ajax({
url: '/Food/CreateFood',
type: 'POST',
data: frm.serialize(),
success: $createdialog.dialog('close')
});
}
});
Run Code Online (Sandbox Code Playgroud)
删除后,打开对话框:
// Once drop, open dialog to create food
options.drop = function (event, ui) {
// Get the ContainerImgName which food dropped at
var cimg = $(this).attr('id');
// Pass …Run Code Online (Sandbox Code Playgroud) 我有一个固定宽度和高度的div:
#containersimg
{
width: 900px;
height: 135px;
}
Run Code Online (Sandbox Code Playgroud)
我里面有很多图像,宽度为90px,高度为120px.所以我希望将我的图像连成一行,并且只显示水平滚动条以滚动图像.
我需要在FF和IE8及更高版本中完成这项工作.我尝试了overflow-x和overflow-y,但我没有帮助.
任何的想法??希望能在这里得到一些帮助......谢谢......
我有一个表,我通过.live()将click事件分配给每一行中的每个td(id ="min")
视图:
<td id="min">
@Html.Action("GetMinAmount", "Stock", new { id = item.FoodID })
</td>
Run Code Online (Sandbox Code Playgroud)
控制器(显示图像或数量)
// Function to return min amount, if null return "-"
public string GetMinAmount(int id)
{
var food = dbEntities.FOODs.Single(f => f.FoodID == id);
string output = "";
if (food.MinAmount == null)
{
output += "<img id=\"disable\" src=\"../../Content/Add_in_Images/disable.png\" alt=\"disable\" style=\"background-image: none\"/>";
}
else
{
return food.MinAmount.ToString();
}
return output;
}
Run Code Online (Sandbox Code Playgroud)
脚本:
$('#min').live('click', function () { $editdialog.dialog('open'); });
Run Code Online (Sandbox Code Playgroud)
但在td中我可以有两个条件,一个是"启用"状态,显示用户可以点击并编辑金额的金额.如果金额为空,将显示一个图标,用户无法对其执行任何操作.
目前我无法删除已禁用图像的点击处理程序.所以即使是假定被禁用的td也是可点击的...
我不知道如何才能删除"禁用"td的点击处理程序.
有谁可以帮忙??? 谢谢.......
jquery ×7
razor ×3
validation ×2
c# ×1
css ×1
datatables ×1
decimal ×1
firebug ×1
href ×1
if-statement ×1
image ×1
javascript ×1
jquery-ui ×1
mailto ×1
match ×1
nivo-slider ×1
overflow ×1
performance ×1
regex ×1
scrollbar ×1
sql-server ×1
target ×1
triggers ×1
z-index ×1