مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

night-wolf

عضویت از 1392/08/12

ثابت ماندن مقادیر جدول و بدست آوردن مقادیر کامل یک تیبل html به همراه تگ ها و مقادیر بعد از پست بک خوردن

  • چهارشنبه 7 شهریور 1397
  • 23:27
تشکر میکنم

با سلام ، من یه تیبل دارم که از طریق  Literal اطلاعات رو داخلش بایند میکنم!

منظورم از اطلاعات کنترل هایی مثل چک باکس و تکست باکس که کنترل های کلاینت ساید هستند به شکل زیر:

مثلا مقادیری که وارد میشه برای ثبت کردن میخوام بعد پست بک بازم مقادیر داخلش بمونه و یا انتخاب هایی که انجام شده بعد پست بک باز پاک نشه! چطور میتونم دقیقا کل قالب این جدول رو به همراه اطلاعات قبل ثبت کردن بردارم و بعد ثبت باز یجوری تو همین Literal جاگذاری کنم که مقادیرش پاک نشن!؟

چطور درواقع میشه اطلاعات رو اول استخراج کرد به همراه تگ ها و tr , td ؟ ممنون میشم !

البته میدونم با Session میشه اما چطوری اول اینارو استخراج کنم؟

پاسخ های این پرسش

تعداد پاسخ ها : 7 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • پنجشنبه 8 شهریور 1397
  • 10:42

میتونید مقادیر را داخل سشن بریزید و پس از صبط دوباره واکشی کنید و نمایش دهید 

اگر از کنترل های Server side استفاده کنید این مشکل را نخواهید داشت 

کاربر سایت

night-wolf

عضویت از 1392/08/12

  • پنجشنبه 8 شهریور 1397
  • 13:05

کنترل های داخل تیبل رو از نوع سرور قرار دادم اما چون از طریق لیترال بایند میشه مقادیر بعد پست بک حذف میشن!

خب اخه مقادیر بدست بیارم بازم بعد فراخوانی چطور ست کنم؟ که فلان مقدار برای چه ستون و چه کنترل داخل تیبلیه و حتی کدوم سطر!!!!

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • پنجشنبه 8 شهریور 1397
  • 21:39

خب با listral بایند نکنید 

مستقیم در کد مقدار دهی کنید تا ViewState عمل کنه

کاربر سایت

night-wolf

عضویت از 1392/08/12

  • پنجشنبه 8 شهریور 1397
  • 23:56

خب آخه این سوالات از دیتابیس دارن فراخوانی میشن و براساس هر نوع انتخابی تغییر میکنن! حالا فرض بر این بگیریم که این سوالات هست و ثبت اطلاعات زده میشه اونوقت این اطلاعات برداشته میشه و در دیتابیس ثبت میشه

اما بعد ثبت یا حتی عدم ثبت بازم پاک میشن! از jquery ajax هم بخوام استفاده کنم چون از UserControl استفاده میکنم متدش کار نمیکنه!

راهی نداره تا ViewState تو این مورد عمل کنه و مقادیر رو نگه داره؟

من حتی یه روش به نظرم رسید که کلا جدول رو قبل ثبت با تمامی کدهای تگش و مقادیر فراخوانی کنم ودر ViewState ذخیره کنم اما چند تا کد فراخوانی تو جاوااسکریپت دیدم فقط اطلاعات زمان بایند شدن رو نشون میدن! مثل این کد:

function getEmail() {
        var email = new Array();
        var arr = document.getElementsByClassName('email');
        for (var i = 0; i < arr.length; i++) {
            email.push(arr[i].innerHTML);
        }
        alert(email.join(','));
    }

این کد اطلاعاتی که اول کاری بایند شدن رو نشون میده! من میخوام با زدن دکمه تمامی تگ ها و کد ها و مقادیر بتونم بخونم اگه این حل بشه بقیش دیگه راحته تو ViewState ذخیره میکنم و بعد ثبت هم دوباره از ViewState میریزم تو لیترال!

لطفا اگر راهنمایی کنید ممنون میشم پروژه کاریمه و خیلی معطلم 3 4 روزه.

سپاس

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • جمعه 9 شهریور 1397
  • 10:34

در سایت نمونه داریم برای ایده 

در همین سایت کلمه آرمون رو سرج کنید 

کاربر سایت

night-wolf

عضویت از 1392/08/12

  • جمعه 9 شهریور 1397
  • 14:49

مطالعه کردم اما روش شما جوری هست که نوع سوالا یکیه یعنی همش 4 گزینه ای مال من احتمال داره یه سوال 5 6 جواب اونم از نوع های مختلف مثلا چک باکس یا رادیو یا تکست باشه

بهترین روش اینه اطلاعات رو بصورت Ajax Jquery سیو کنم تا پست بک نخوره! اما متاسفانه تو UserControl ASCX من از کد زیر استفاده میکنم کار نمیکنه و فقط برای صفحات ASPX کار میکنه!

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="http://cdn.jsdelivr.net/json2/0.1/json2.js"></script>
<script type="text/javascript">
    $(function () {
        $("[id*=btnSave]").bind("click", function () {
            var user = {};
            user.Username = $("[id*=txtUsername]").val();
            user.Password = $("[id*=txtPassword]").val();
            $.ajax({
                type: "POST",
                url: "*WebUserControl.ascx/SaveUser",
                data: '{user: ' + JSON.stringify(user) + '}',
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (response) {
                    alert("User has been added successfully.");
                    window.location.reload();
                }
            });
            return false;
        });
    });
</script>

میشه بفرمایید چیکار کنم؟

ممنون

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • جمعه 9 شهریور 1397
  • 18:37

کد های  Ajax در همه زبان ها کار میکنند

لاگ کنسول مرورگر را بررسی کنید و مشکل را پیدا کنید

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)