我只希望用户能够在填写文本框中的值时提交表单,而I的JSON数组只希望用户能够在文本中的值时提交表单已填写框并且JSON图像数组已按正确顺序拖动。
代码需要image_order以及文本框输入。这是因为它还标有名字吗?如何避免这种情况,但在提交之前仍需要字段和顺序正确?
对不起,我对这一切都很陌生。
JavaScript
$(window).load(function(){
$(function() {
$( "#sortable" ).sortable({
placeholder: "ui-state-highlight",
cursor: 'crosshair',
update: function(event, ui) {
var order = $("#sortable").sortable("toArray");
order = JSON.stringify(order);
correct = JSON.stringify(["4","3","2","1"]);
if (order==correct){
var valid = true
console.log(':)');
}
}
});
$( "#sortable" ).disableSelection();
$('#submit').on('click', function() {
var valid = true,
message = '';
$('form input').each(function() {
var $this = $(this);
if(!$this.val()) {
var inputName = $this.attr('name');
valid = false;
message += 'Please enter your ' + inputName + '\n';
}
});
if(!valid) {
alert(message);
}
else {
window.location.href = "http://stackoverflow.com";
}
});
});
});
HTML
Name : <input type="text" class="text" name="name" id="name" /> <br/>
Address : <input type="text" class="text" name="address" id="address" /> <br/>
email : <input type="text" class="text" name="email" id="email" /> <br/>
<input type="hidden" id="image_order" name="image_order" value="order" />
<ul id="sortable" style="width: 524px;">
<li id="1" class="ui-state-default"><img src="1.png" width="100" height="90" /></li>
<li id="2" class="ui-state-default"><img src="2.png" width="100" height="90" /></li>
<li id="3" class="ui-state-default"><img src="3.png" width="100" height="90" /></li>
<li id="4" class="ui-state-default"><img src="4.png" width="100" height="90" /></li>
</ul>
<div style="clear:both;"></div>
<input name="Submit" value="RE-ORDER" type="submit" />
<input type="button" id="submit" value="Submit" name="submit" />
</form>
</body>
答案 0 :(得分:0)
试试这个:
$('form input').not('#image_order').each( //...