特定の行からjqueryで呼び出しているダイアログフォームに値をコピーしようとしていますが、正しく機能させることができません。(編集機能)。ダイアログボックスが開きますが、ei_Ingredientからの値は渡されません。上記の「成分の追加」機能は完全に機能します。以下は私のコードです、そしてあなたは私がこれまでに試した3つの方法を見ることができます...
$(document).ready(function () {
var _Ingredient = $('#ingHeader'),
_newIngredient = $('#newIngredient'),
_newMeasurement = $('#newMeasurement'),
_newAmount = $('#newAmount'),
allFields = $([]).add(_newIngredient).add(_newMeasurement).add(_newAmount)
$('#dialog-form').dialog({
autoOpen: false,
height: 300,
width: 350,
modal: true,
show: "clip",
hide: "scale",
speed: "fast",
buttons: {
"Add Ingredient": function () {
var _row = $('#templates').find('.row-template-ExistingItem').clone();
_row.find('.ei_Ingredient').val(_newIngredient.val());
_row.find('.ei_Measurement').val(_newMeasurement.val());
_row.find('.ei_Amount').val(_newAmount.val());
_row.find('.edit').click(function () {
_newIngredient.val();
_newMeasurement.val(_row.find('ei_Ingredient').val());
_newAmount.val($('.ei_Amount').val());
$('#dialog-form').dialog('open');
});
_row.find('.delete').click(function () {
_row.remove();
});
_Ingredient.append(_row);
$(this).dialog("close");
},
Cancel: function () {
$(this).dialog("close");
}
},
close: function () {
allFields.val("");
}
});
テンプレート:
<tr class="row-template-ExistingItem">
<td><input class="ei_Ingredient" readonly="true"/></td>
<td><input class="ei_Measurement" readonly="true" /></td>
<td><input class="ei_Amount" readonly="true" /></td>
<td><input type="button" value="Edit" class="edit" style="width:45px;" /></td>
<td><input type="button" value="Delete" class="delete" style="width:45px;" /></td>
</tr>
フォーム: