我在添加新文本字段时尝试按降序编写文本字段。
这是我的代码:
JS:
StringBuilder html = new StringBuilder()
html.Append(htmlHelper.CheckBoxFor(checkBoxExpression, checkBoxHtmlAttributes).ToString());
if (checkBoxGlyphIcon != null)
{
var checkBoxGlyphIconSpan = new TagBuilder("span");
checkBoxGlyphIconSpan.Attributes.Add("class", checkBoxGlyphIcon.CssClass);
html.Append(checkBoxGlyphIconSpan.ToString());
}
var checkBoxSpan = new TagBuilder("span");
checkBoxSpan.Attributes.Add("class", "input-group-addon");
checkBoxSpan.InnerHtml = html.ToString();
html = new StringBuilder();
html.Append(htmlHelper.TextBoxFor(textBoxExpression, textBoxHtmlAttributes).ToString());
html.Append(checkBoxSpan.ToString());
var outerDivTag = new TagBuilder("div");
outerDivTag.MergeAttributes(htmlAttributes);
outerDivTag.AddCssClass("input-group");
outerDivTag.InnerHtml = html.ToString();
MvcHtmlString.Create(outerDivTag.ToString());
我尝试使用js排序方法,但那不起作用....
提前感谢您的帮助!
答案 0 :(得分:2)
你可能搞砸了id
和class
,因为.XXX
表示类XXX
的元素,而ID为YYY
的元素应该使用选择器#YYY
。
您可以将.add_field_button
更改为#add_field_button
或更改ID为add_field_button
的按钮,使其成为我在代码段中完成的课程add_field_button
。
如果你想降序,请使用.prepend(),这样最新添加的文本框就会插入到容器的前面。
$(function() {
var max_fields = 10; //maximum input boxes allowed
var wrapper = $(".input_fields_wrap"); //Fields wrapper
var add_button = $(".add_field_button"); //Add button CLASS
var x = 1; //initlal text box count
$(add_button).click(function(e){ //on add input button click
e.preventDefault();
if(x < max_fields){ //max input box allowed
x++; //text box increment
$(wrapper).prepend('<div><input type="text" class="form-control" name="mytext[]" placeholder="<Menu Name / Transaction ID/ Description>"/> <select><option ></option><option >Add</option></select><a href="#" class="remove_field"> Delete</a></div>'); //add input box
}
});
$(wrapper).on("click",".remove_field", function(e){ //user click on remove text
e.preventDefault(); $(this).parent('div').remove(); x--;
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<button class="add_field_button">Test</button>
<div class="input_fields_wrap"></div>