2010-05-04 128 views
0

如果我有3个HTML页面如下:ajax请求后更改值!

home.html的:

<form method="get">   
    <input class="someForm" type="radio" value="1" name="someForm" /> Name 
    <input class="someForm" type="radio" value="2" name="someForm" /> Email 
    <div id="container"></div> 
    <input type="submit" /> 
</form> 

<script type="text/javascript" src="jquery.js"></script> 
<script> 
    var ajaxResponse = new Object(); 
    $(document).ready(function() { 
    $('.someForm').click(function() { 
    var rbVal = $(this).val(); 
     var myContent; 
     if (ajaxResponse[rbVal]) { //in cache 
      myContent = ajaxResponse[rbVal]; 
      $("#container").html(myContent); 
     } 
     else { // not in cache 
     var urlForAjaxCall = "file" + rbVal + ".html"; 
      $.get(urlForAjaxCall, function (myContent) { 
      ajaxResponse[rbVal] = myContent; 
      $("#container").html(myContent); 
      }); 
     } 
     }); 
    }); 
</script> 

的file1.html:

Name: <input type="text" name="name1" value="myName" /> 

file2.html:

Email: <input type="text" name="email2" value="[email protected]" /> 

我想要做的是,当我点击(例如)单选按钮1并在corr中写入某些内容时esponding文本框(名称),“亚历克斯”为例,然后单击任何一个单选按钮,然后在Home.html然后在随后reclick单选按钮1,我得到了新的价值,而不是让“MYNAME”,如何做到这一点任何想法? TIA

回答

0

使用PHP,然后你可以用一个查询字符串或通过交在你的jQuery传递值...

的jQuery:

$.ajax({ 

    url:"file1.php", 
    data:{name: $("#a_text_field_id_here").val()}, 
    success: function() { 
    /// do something on success.... 
    } 


}); 

即:

file1.php?name=Alex 

和您file1.php页面会碰到这样的

<?php 

if (isset($_GET['name'])) { 
    $name = $_GET['name']; 
} else { 
    echo "Name is empty! do something here..."; 
} 

?> 
Name: <input type="text" name="name1" value="<? php echo $name;?>"/> 

大多数网络服务器有PHP现在是一个天...你可以在电脑上进行本地安装,测试使用wampserver ..这来完成的一切......只要安装运行,并转到本地主机在您的浏览器! ... C:\ WAMP \ www是你的web目录...

0

因为你去了这里纯HTML的解决方案(其中即时通讯假设是这样),那么你可以通过存储在表格上的数据解决这个问题上给出事件..

这里是一个概念证明: http://jsfiddle.net/2Anp3/1/