Ich habe eine Frage in JQuery..I m $.ajax()
in meinem Code verwendet (Function 1)
die Feldnamen und die laufende Nummer der ctrller zu senden, die ihre Daten von $_POST['name']
und $_POST['sequenceno']
erhalten und aktualisieren die Feldnamen in die Tabelle mit der Sequenz no angegeben..Und generiert die Vorschau Anzeige Panel mit den eingefügten Feldern .. Jetzt versuche ich die Änderung des Feldnamens wieder tat ist Jetzt wenn ich auf die generierten Anzeigefeldfelder klicke, werden die entsprechenden Einstellungen geöffnet und ich werde versuchen, den Namen des Feldes jetzt (Function 2)
Samt Ajax genannt twice..JQuery
Beide Function1
und Function2
sind gleiche ..In der Function1
zu ändern Ich bin die Feldnamen zu senden und die Sequenz keine
Im Funciton 2, ich mag die gleichen Feldnamen senden und zu (aber das anderen Wert) sequenceno ..
Aber in Function1 (sequenceno ist der Zählerwert) Während in der Function2 (sequenceno ist die angeklickt div id (Display Panel))
Wie kann ich von der gleichen func sowohl ..oder konnte ich separaten funcs verwenden müssen machen ..
Selbst i versucht mit 2 separaten Funktionen mit verschiedenen URLs aber nicht korrekt aktualisiert
Mein Code ist
//This is what i insert the field initially
$(".TextFieldSettings #fieldTitle").change(function(){
fieldname=$(".TextFieldSettings #fieldTitle").val();
$.ajax({
type: "POST",
url: "./server",
data: "name="+fieldname+"&sequenceno="+counter,
success: function(msg){
}//success
});//ajax
});//change
//After inserting to get the updated values in JSON format
var htm = $.ajax({
type: "GET",
url: "./viewforms",
async: false
}).responseText;
var myObject = eval('(' + htm + ')');
gettype=myObject.attributes[0]["type"];
getlabel=myObject.attributes[0]["labels"];
//showing in my DisplayPanel view
$("#labelstr"+counter+"").html(getlabel);
});//change
Jetzt Wenn ich die Ansicht DisplayPanel klicken
$("#displayPanel div").live("click", function(){
div_id=$(this).attr("id");
var htm = $.ajax({
type: "GET",
url: "./getattributes/"+div_id+"",
async: false
}).responseText;
var myObject = eval('(' + htm + ')');
gettype=myObject.attributes[0]["type"];
getlabel=myObject.attributes[0]["labels"];
getsize=myObject.attributes[0]["size"];
if(gettype=='Text')
{
$(".TextFieldSettings").show(function(){
$(".TextFieldSettings #fieldTitle").val(getlabel);//showing the updated value
if(getsize=='100')
{
$("#fieldSize option:contains(Small)").attr("selected",true);
}
else if(getsize=='200')
{
$("#fieldSize option:contains(Medium)").attr("selected",true);
}
else
{
$("#fieldSize option:contains(Large)").attr("selected",true);
}
//Again i m changing the fieldname
$(".TextFieldSettings #fieldTitle").change(function(){
fieldname=$(".TextFieldSettings #fieldTitle").val();
alert(div_id);
$.ajax({
type: "POST",
url: "./editsettings",
data: "name="+fieldname+"&sequenceno="+div_id,
success: function(msg){
}//success
});//ajax
});//change in text value later*/
});//show
}//if type = TEXT
});//displaypanel Div clicked
Aber jetzt, wenn ich versuche, den Feldnamen zu ändern, wieder schreibe ich eine andere POST Funktion editsettings
aber die Ausführung kommt innerhalb Func1
(Ändern anfänglich) anstelle von Func2
(im Feldname wieder ändern) ... Bitte jemand raus die Antwort für diese .... Hinweis: $(".TextFieldSettings #fieldTitle").change()
wird zweimal in meinem prg verwendet .. Kann sein, weil die update schief geht
Welcher Teil ist eigentlich die Frage hier? Möchten Sie wissen, ob Sie nur eine einzige wiederverwendbare Funktion gegenüber zwei verschiedenen Funktionen haben können? – Fenton
Zwei verschiedene Funktionen() Aber beide Namen sind wie $ (". TextFieldSettings #fieldTitle"). Change (function() {}); Die gleiche Sache, aber anderer Zweck – useranon