引用 33 楼 anyilaoliu 的回复:
你以前是input的边框  现在input都被你替换掉了有两个解决方案  一是直接把数值插入input的value中二是还按现在的写  然后给td加边框让其看起来像之前的给你写的td.html(xxx) 并不是一定要死板的这么写 你td里边有内容 就随之变化
————————————————————————————————————————————————————————————————————————————————
前面是热心人 anyilaoliu对我前一个问题的指导。随后,我又产生一些问题:(大家别介意,我是新手,我想扎扎实实把问题问清楚,这样此类问题就好办了)1.在我前面问的问题中,我需要完成页面左边是记录列表,右边为记录的各个字段详细信息(基本上是以一列方框的形势存在),下面有一个save按钮,用来添加记录的。现在我想增加一个按钮,用来删除选中的记录。我的思路是:点击左边某记录,其内容会在右边显现出具体内容,此时点击删除按钮,则可以删除给记录。我在实现过程中遇到的困难是如何记录下给选中的记录的编号,我采用的方法是在$.ajax()指向ajax.php时,在ajax.php文件中采用session的方式记录下编号,然后再在点击删除按钮时启动另外一个文件,读取session,并查找数据库并删除。想的挺美的,程序就是认为session没有赋值。晕死,以前试过做过小东西,session是保留的最后一招,现在不行了。也不知道怎么回事情?2.针对$.ajax()中所指定的ajax.php,把该文件返回的信息插入<input>的value中,比如 
<input type="text" class="Vtextbox" name="firstname" value=""> 
这个应该怎么操作呢?3.前贴中说到, anyilaoliu说到“给你写的td.html(xxx) 并不是一定要死板的这么写 你td里边有内容 就随之变化”,意思其实是不仅td可以用,像<p><div><tr>都可以这样用是么?是不是对于上述类型都是标注class="指定名称"即可呢?4.还有,$.ajax()函数中采用$(".show_tr").text(..)的形式引用返回信息,但ajax中还有$.post()这个函数时,好像就写成$("#show_6").text(..),这两个.show_6和#show_6是不能混用的吧?我看到另外一个朋友,他就是到处用$.post(),我想知道这两个函数优劣,以及该使用哪个。我这个恐怕是学习贴,欢迎各位指导啊。

解决方案 »

  1.   

    之前我说了很多 可能描述的也不太清楚  或许换个人楼主就能看更明白一些... 也希望能有高人指出我说的不对不好的地方,下边也是1.没听说过删除用session做的,都决定用ajax了 就继续用ajax,这个应该是比较习惯的做法了. 和点哪个显示哪个一样,点哪个的删除,就把哪个对应的唯一字段值传用ajax到后台进行删除 删除成功后返回成功标志,前台在ajax的success里边接到这个值就刷新页面或者操作js删掉对应的dom节点2.插入td 可以写成$("td").html(要插入的值),要插入td里边的input,可以写成$("td > input").val(要插入的值),无非是选择器的不同.使用各种选择器定位到你要改变值的地方3.还是选择器的问题,(继续说jquery的选择器)对于标准的html标签,<p>可以用$("p")来选定. 如果这个<p>有个class,比如<p class="abc"></p> 可以用$("p.abc")来定位也可以用$(".abc")来定位. 如果这个p还有个id
    比如<p id="bcd" class="abc"></p> 可以用$(".abc")来定位也可以用$("#bcd")来定位.
    总之常规标签直接在引号里边写,class就加点,id就加#,跟CSS的选择器规则相同 $("p.abc")则表示 class为abc的p标记,$(".abc")表示class为abc的任意标记4.不管是$.ajax()还是$.post()还是jquery的其他方法,里边各种类型的选择器都可以随意使用 只要按照规则能定位到即可.
    $.ajax()和$.post()我区别我不太清楚,我能看出来的唯一区别就是$.ajax()可以选择get和post两种方式,并且要指定,而$.post()只能用post方式,当然,也无需指定.
    求指正.
      

  2.   

    1、不知道你在说什么?既然是续问,那么原帖在哪里?
    2、你原帖中并没有清晰的描述你的需求,亏了 anyilaoliu 有耐心示例了整个代码
    不满你的意是很正常的,因为你并没有说明细节
    3、术业有专攻,js 的问题应在 javascript 版面讨论。
    这样也可以帮助你分清服务端和客户端各自的任务
      

  3.   


    结贴之后,也不知道帖子跑哪里去了。
    先前帖子中,anyilaoliu和我一直在探讨,所以新帖中其他人看着就觉得有点奇怪。
      

  4.   


    呵呵,一看原来是版主回我的信息了。
    我就是新手,多问问清楚,打破砂锅问到底还是要的,否则懵懵懂懂,还是不会做。
    原来版块划分这么清楚啊,才知道。说起来,知识界限,而且我主要还是做Php的,但总碰到js问题不会,悲啊。
    既然开贴了,就让我仔细琢磨琢磨清楚,下回注意。
    谢谢各位前辈了。
      

  5.   

    别太客气.... 有问题自己归纳梳理下  想不明白就来问 csdn是个不错的平台我之前初学的时候也是各位热心高手帮我渡过难关...太客气就都觉到压力了....
      

  6.   


    是滴是滴。前辈说的是,将来如果我这方面熟悉了,一定也把这个CSDN论坛的精髓传递下去。
    原先我的代码是:$(".show_2").text(msg.firstName)
    现改为:$(".show_2> input").val(msg.firstName)出来的结果很好。虽然输出仍是顶格,我可以在<input.....>里面设置居中格式,应该可以解决。
    第一个问题,我的计划是明天或者下周一实际完成,到时候再来汇报以及结贴。
      

  7.   


    在anyilaoliu的指导下,帖子中后三个的细节问题处理的都很圆满。感谢anyilaoliu的支持啊。因为一些原因,原先预计进行的删除记录的功能(帖子中的第一个问题)我没有做,所以这里也无法给出结果供大家探讨。我是新手,不懂这里的规则,这里与anyilaoliu以及版主商量下。我有个小问题想问,超出了上面4个问题的范围,如果不应该在该帖子中问,而应该另开新帖,请大家提醒我一下,那我就立马结贴。主要这个问题与anyilaoliu先前热情给出demon的问题很接近,所以想追问一下,不知道可否?
    问题其实很简单,一个非常简单的页面分为上下两部分。上部分为一个select标签(下拉表,里面有若干选项供选择),每次选择下拉表中的一个选项,就根据这个关键词的值在数据库中搜索,然后把结果显示在这个页面的下部分。想想应该在anyilaoliu上次给出的demon代码基础上稍加修改即可,但我没有做过,困扰我两天。棘手,求指导啊!
      

  8.   


    在anyilaoliu的指导下,帖子中后三个的细节问题处理的都很圆满。感谢anyilaoliu的支持啊。因为一些原因,原先预计进行的删除记录的功能(帖子中的第一个问题)我没有做,所以这里也无法给出结果供大家探讨。我是新手,不懂这里的规则,这里与anyilaoliu以及版主商量下。我有个小问题想问,超出了上面4个问题的范围,如果不应该在该帖子中问,而应该另开新帖,请大家提醒我一下,那我就立马结贴。主要这个问题与anyilaoliu先前热情给出demon的问题很接近,所以想追问一下,不知道可否?
    问题其实很简单,一个非常简单的页面分为上下两部分。上部分为一个select标签(下拉表,里面有若干选项供选择),每次选择下拉表中的一个选项,就根据这个关键词的值在数据库中搜索,然后把结果显示在这个页面的下部分。想想应该在anyilaoliu上次给出的demon代码基础上稍加修改即可,但我没有做过,困扰我两天。棘手,求指导啊!没事 有问题就问 版主提醒你该去什么版块也是希望你能更快的找到答案.你现在说的这个 和之前的ajax实现的其他功能并没有两样可以拆分为以下功能点1.选择下拉菜单的某一项时触发一个js函数,并将对应参数传入
    2.js函数中使用ajax将传入的参数提交到后台查询结果,并返回结果
    3.ajax中将返回的结果显示你分析下你是哪个环节没搞定.
      

  9.   


    在anyilaoliu的指导下,帖子中后三个的细节问题处理的都很圆满。感谢anyilaoliu的支持啊。因为一些原因,原先预计进行的删除记录的功能(帖子中的第一个问题)我没有做,所以这里也无法给出结果供大家探讨。我是新手,不懂这里的规则,这里与anyilaoliu以及版主商量下。我有个小问题想问,超出了上面4个问题的范围,如果不应该在该帖子中问,而应该另开新帖,请大家提醒我一下,那我就立马结贴。主要这个问题与anyilaoliu先前热情给出demon的问题很接近,所以想追问一下,不知道可否?
    问题其实很简单,一个非常简单的页面分为上下两部分。上部分为一个select标签(下拉表,里面有若干选项供选择),每次选择下拉表中的一个选项,就根据这个关键词的值在数据库中搜索,然后把结果显示在这个页面的下部分。想想应该在anyilaoliu上次给出的demon代码基础上稍加修改即可,但我没有做过,困扰我两天。棘手,求指导啊!没事 有问题就问 版主提醒你该去什么版块也是希望你能更快的找到答案.你现在说的这个 和之前的ajax实现的其他功能并没有两样可以拆分为以下功能点1.选择下拉菜单的某一项时触发一个js函数,并将对应参数传入
    2.js函数中使用ajax将传入的参数提交到后台查询结果,并返回结果
    3.ajax中将返回的结果显示你分析下你是哪个环节没搞定.
    这三个功能点分的很好。这个逻辑很清晰,后两个问题应该没有多大问题。就是第一个问题。先前基于你的demon,代码为:
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){
            $(".LeftTruck").click(function(){
                $(this).css("background","#A8A8A8");
                $(this).siblings().css("background","white");
                var n = $(this).text();
                $.ajax({
                    type:"get",
                    url:"main/ajax.php",
                    data:{
                        driverID:n
                    },
                    success:function(msg){
                        msg = eval("("+msg+")");                     $(".show_2> input").val(msg.firstName);        
                        $(".show_3> input").val(msg.lastName);
                        $(".show_4> input").val(msg.socialNum);
                        $(".show_5> input").val(msg.mobile);
                        $(".show_6> input").val(msg.email);
                        var driverType = msg.type;
                        if(driverType == 1)
                        {        
                            $(".show_1 > input[name='type']:eq(0)").attr("checked","checked");
                            $(".show_1 > input[name='type']:eq(1)").removeAttr("checked");
                        }
                        else
                        {               
                           $(".show_1 > input[name='type']:eq(1)").attr("checked","checked");
                           $(".show_1 > input[name='type']:eq(0)").removeAttr("checked");
                        }  
                                    }
            });
        });});    
    </script>其中, $(".LeftTruck").click(function()恐怕得变了,因为这里没有没有click这个动作了。那应该改为什么动作?难道是select?
    这一句 $(this).siblings().css("background","white");肯定也不要了,没有click动作,就没有恢复的这个设定。
    后面的 $.ajax({。估计差别不大,可以根据我的需求再改变。在你提醒了好几次细节情况下,现在我有点灵活应用了。
    还有一个细节,页面上以及相应地html代码上,我肯定是用select+option的方式设置可选项了吧。这点没有疑问吧?
      

  10.   

    恩 那既然这样,正好你可以试试用谷哥或度娘来帮助自己解决问题你百度下"jquery select选中",结果的第一条或者前两天就可以帮你解决这个疑问了..你先试试 不行的话再来跟帖.
      

  11.   


    呵呵,,汗啊。新手,容易依赖,我找到了,是用find。
    http://blog.csdn.net/Feiin/article/details/3896937
    这个上面有,谢谢先。
    结贴。