Need to add select fields to MsgBox jquery
I need to add select fields to MsgB开发者_运维知识库ox with jQuery. Does anyone know how ?
if (input.type == 'checkbox')
{
iLabel = input.label ? '<label class="' + this.options.name + '-label">' : '';
fLabel = input.label ? input.label + '</label>' : '';
input.value = input.value === undefined ? '1' : input.value;
iName = input.name === undefined ? this.options.name + '-label-' + i : input.name;
this.esqueleto.inputs.append($(iLabel + '<input type="' + input.type +
'" style="display: inline; width: auto;" name="' + iName + '" value="' +
input.value + '" autocomplete="off"/>' + fLabel));
}
I changed it to select fields, but it does not work when communicating PHP > jQuery and vice versa. Could someone help?
if (input.type == 'checkbox') {
iLabel = input.label ? '<label class="' + this.options.name + '-label">': '';
fLabel = input.label ? input.label + '</label>': '';
input.value = input.value === undefined ? '1': input.value;
iName = input.name === undefined ? this.options.name + '-label-' + i: input.name;
this.esqueleto.inputs.append($(iLabel + '<input type="' + input.type + '" style="display:inline; width:auto;" name="' + iName + '" value="' + input.value + '" autocomplete="off"/> ' + fLabel))
} else if ( input.type == 'select' ) {
iLabel = input.label ? '<label class="' + this.options.name + '-label">' + input.label: '';
fLabel = input.label ? '</label>': '';
input.value = input.value === undefined ? '': input.value;
iName = input.name === undefined ? this.options.name + '-select-' + i: input.name;
this.esqueleto.inputs.append($(iLabel + '<select name="' + iName + '"></select>' + fLabel));
$.each(input.options, $.proxy(function(ip, ap) {
ap.value = ap.value === undefined ? '': ap.value;
iName = ap.name === undefined ? this.options.name + '-option-' + ip: ap.name;
$('select[name=' + input.name + ']').append($('<option value="' + ap.value + '">' + ap.label + '</option>'))
}, this));
}
inputs : [
{ type: "select", name: "select", label: "select:", options: [{ label: "option1", value: "option1" },{ label: "option2", value: "option2" }] }
]
Find this line in the Javascript code:
this.close(this.toArguments($('input', this.esqueleto.inputs)))
and add , select
as a jQuery selector to get this:
this.close(this.toArguments($('input, select', this.esqueleto.inputs)))
and CSS:
.jquery-msgbox-inputs select
{
display: block;
padding: 3px 2px;
border: 1px solid #dddddd;
margin: 3px 0 6px 0;
width: 97%;
}
精彩评论