У меня есть диалоговое окно JQuery с элементом управления внутри содержащего текстовое поле, у меня также есть кнопка ok внутри. В окном ОК я получаю значение из текстового поля и передаю его функции.Получение старого значения из текстового поля в диалоговом окне
Проблема:
Everytime изменить значение в текстовом поле он только получает старое значение,
так, если оригинальное значение 3, я изменить его на 20, я нажимаю кнопку, он получает значение 3.
У кого-нибудь есть идеи, почему он это делает?
спасибо!
здесь некоторый код:
Jquery:
$("#addtxt").click(function (e) {
$("#dialog").show('slide');
$("#dialog").html('<input id="my_txttext" name="my_txttext" title="Manoj" type="text" label="Add Text" />');
$("#dialog").dialog({
resizable: false,
modal: true,
position: {
my: 'center',
at: 'center',
// collision: 'fit',
// ensure that the titlebar is never outside the document
using: function (pos) {
var topOffset = $(this).css(pos).offset().top;
if (topOffset < 0) {
$(this).css('top', pos.top - topOffset);
}
}
},
width: 300,
CloseText: '',
title: 'Add Text',
buttons: {
'OK': function() {
//to create dynamic div to contain data
var div = document.createElement('div');
$(div).attr("id", "dyndiv" + count);
objid = "dyndiv" + count;
count++;
$('#sel_obj_text').val("Text");
text_visibility();
var $ctrl = $(div).text($('#my_txttext').get(0).value).addClass("draggable ui-widget-content HandleTopRowBorder").draggable({
containment: '#containment-wrapper',
cursor: 'move',
snap: '#containment-wrapper'
});
$("#containment-wrapper").append($ctrl);
$('#' + objid).position({
of: $("#containment-wrapper"),
my: "center" + " " + "center",
at: "center" + " " + "center"
});
// $('#my_txttext').val('')
$(this).dialog("destroy");
},
'Cancel': function() {
$(this).dialog("destroy");
// I'm sorry, I changed my mind
}
}
});
Я не уверен здесь, так как мой JQuery-фу не удивительно, но я не после, почему вы звоните get (0) ... если вы хотите, чтобы значение my_txttext не могло быть просто '$ ('# my_txttext) .val'? – DaOgre
Фактически раньше я использовал $ ('# my_txttext) .val(), но у него также была та же проблема –
Когда вы говорите: «Каждый раз, когда я изменяю значение в текстовом поле», вы имеете в виду, что вы открываете диалоговое окно несколько раз и изменить значение? – jessegavin