我有一个包含enum
属性的类,在使用时序列化对象时JavaScriptSerializer
,我的json结果包含枚举的整数值而不是它的string
"name".有没有办法让枚举作为string
我的json而不必创建自定义JavaScriptConverter
?也许有一个属性,我可以装饰enum
定义,或对象属性,?
举个例子:
enum Gender { Male, Female }
class Person
{
int Age { get; set; }
Gender Gender { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
期望的json结果:
{ "Age": 35, "Gender": "Male" }
Run Code Online (Sandbox Code Playgroud) 我有一个表示元素的HTML字符串:'<li>text</li>'
.我想将它附加到DOM中的一个元素(ul
在我的例子中).如何使用Prototype或DOM方法执行此操作?
(我知道我可以在jQuery中轻松完成这个,但不幸的是我们没有使用jQuery.)
从性能的角度来看,是否有一种确定元素是否被赋予类别的首选方法?
$('#foo').hasClass('bar');
Run Code Online (Sandbox Code Playgroud)
要么
$('#foo').is('.bar');
Run Code Online (Sandbox Code Playgroud) 我有两个javascript函数,save()
并saveAll()
设置如下:
function save(data) {
return $.post('/save', data);
}
function saveAll(callback) {
var dataArray = [];
$.each(dataArray, function() {
save(this);
});
callback();
}
Run Code Online (Sandbox Code Playgroud)
我有兴趣修改saveAll()
它以利用jquery延迟对象,并在callback
所有save()
操作完成后引发该函数.但是,我不确定确切的语法...特别是与$ .when()内部的$ .each()有关.会是这样的吗?
function saveAll(callback) {
var dataArray = [];
$.when(
$.each(dataArray, function() {
return save(this);
})
).then(callback);
}
Run Code Online (Sandbox Code Playgroud) 在来自图像的函数调用中,我试图将图像中的alt标记值插入到插入符当前所在位置的textarea中.
这是我目前拥有的代码,它将alt标记值插入文本区域的末尾.
$("#emoticons").children().children().click(function () {
var ch = $(this).attr("alt");
$("#txtPost").append(ch);
});
Run Code Online (Sandbox Code Playgroud)
我遇到问题的两件事是确定插入符号的位置,并在插入符号位置+插入的代码+插入符号后的textarea的值之前创建一个带有textarea值的新字符串.
建立在这个问题的$.fn.serializeObject()
功能上,我希望能够在我的表单名称中支持"点符号",如下所示:
<form>
<input name="Property.Items[0].Text" value="item 1" />
<input name="Property.Items[0].Value" value="1" />
<input name="Property.Items[1].Text" value="item 2" />
<input name="Property.Items[1].Value" value="2" />
</form>
Run Code Online (Sandbox Code Playgroud)
给出$('form').serializeArray()
产生以下内容:
[{"name":"Property.Items[0].Text","value":"item 1"},
{"name":"Property.Items[0].Value","value":"1"},
{"name":"Property.Items[1].Text","value":"item 2"},
{"name":"Property.Items[1].Value","value":"2"}]
Run Code Online (Sandbox Code Playgroud)
我怎样才能达到以下所需的结果:
{Property: {Items: [{Text: 'item 1', Value: '1'},
{Text: 'item 2', Value: '2'}]} }
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.
编辑:具体来说,所需的代码将被添加到serializeObject
扩展中,这样除了它现在的工作方式之外,它还将支持上述约定.这是现有的方便方法.
$.fn.serializeObject = function() {
var o = {};
var a = this.serializeArray();
$.each(a, function() {
if (o[this.name]) {
if (!o[this.name].push) {
o[this.name] = [o[this.name]];
}
o[this.name].push(this.value || ''); …
Run Code Online (Sandbox Code Playgroud) 我希望能够从我的html表单创建一个javascript对象,并想知道是否有一个使用jquery这样做的好方法.我想我正在寻找的东西类似于$ .serialize,但这会导致地图而不是字符串.
<form>
<input type="text" name="foo1" value="bar1" />
<input type="text" name="foo2" value="bar2" />
</form>
Run Code Online (Sandbox Code Playgroud)
期望的结果:
{ foo1:"bar1", foo2:"bar2" }
Run Code Online (Sandbox Code Playgroud) 我有一个复选框网格,每个单元格都有一个固定的宽度,每个复选框前面都有一个小图像.如果标签文本太长,我很难将文本包装在复选框下面.
参考上面的屏幕截图,我希望"文本包装"与复选框对齐,而不是包裹在图像下方,如下所示:
我用我当前的标记和样式设置了一个小提琴.我无法改变的是HTML结构,但任何CSS更改都可以.
这是一段代码:
.checkbox-list {
}
img.placeholder{
width:16px;
height:16px;
background-color:lightblue;
}
td {
padding:2px;
width:150px;
vertical-align:top;
}
label {
/*display:inline-block;*/
}
Run Code Online (Sandbox Code Playgroud)
<table class="checkbox-list">
<tbody><tr>
<td>
<img class="placeholder"/>
<label>
<input type="checkbox"/>
<span>Some really long text that wraps</span></label></td>
<td>
<img class="placeholder"/>
<label>
<input type="checkbox"/>
<span>Foo</span></label></td>
<td>
<img class="placeholder"/>
<label>
<input type="checkbox"/>
<span>Foo</span></label></td>
</tr><tr>
<td>
<img class="placeholder"/>
<label>
<input type="checkbox"/>
<span>Foo</span></label></td>
<td>
<img class="placeholder"/>
<label>
<input type="checkbox"/>
<span>Foo</span></label></td>
<td>
<img class="placeholder"/>
<label>
<input type="checkbox"/>
<span>Foo</span></label></td>
</tr>
</tbody></table>
Run Code Online (Sandbox Code Playgroud)
我希望能够做到这样的事情:
declare @label varchar
set @label = 'label_1'
goto @label
label_1:
label_2:
Run Code Online (Sandbox Code Playgroud)
当然,sql server给了我一个不正确的语法错误...所以我想知道我是否仍然可以用略有不同的语法来做到这一点?