2017-02-19 47 views
1

我有下拉列表,列出了用戶列表。所以,當我選擇一個單選按鈕,出現帶有選項列表中的用戶修改用戶詳細信息,更改用戶權限,警告用戶傳遞輸入值超出提交表格

在選擇從無線電選項的選擇,我打開一個PHP的形式

<select id="user_id" name="user_id" class="form-control"> 
<option value="1">John</option> 
<option value="2">Jake</option> 
</select> 


<input name="change" value="1" type="radio"> 
<input name="change" value="2" type="radio"> 
<input name="change" value="3" type="radio"> 

表格(更改用戶名)

<form id="change_name" > 
<input name ="username" /> 
<input value="submit" type="submit"> 
</form> 

表格(更改權限)

<form id="change_permission" > 
<input name ="permission_id" /> 
<input value="submit" type="submit"> 
</form> 

每一種形式具有單獨的提交處理程序(下面僅僅是一個例子怎麼把所有形式具有類似的一個)

$("#change_name").validate({ 
     debug: true, 
     rules: { 
      username: { 
       required: true 
      }, 

     }, 
     messages:{ 
      //messages  
     }, 
     submitHandler: function (form) { 
      $.ajax({ 
       type: 'POST', 
       url: 'http://localhost/test/changename.php', 
       data: $(this).serialize(), 
       success(function(data) { 
       if (data){ 
        alert("success"); 
        $(this)[0].reset(); 
       } 
       }) 
      }); 
      return false; 
     } 
    }); 

,即時通訊具有被我不能找到一種方法,通過user_id值問題時的表單正在提交,因爲該輸入字段不在表單中。

有人可以告訴我什麼是最好的方法來實現這一目標?

+1

像'$( '#Form1上,#窗口2')。序列化()'? – sabithpocker

回答

1

Serialize基本上採用鍵/值對並將它們連接成一個格式:key=value&key1=value1如果你想添加額外的東西,你可以做正常的字符串連接。

$(this).serialize() + "&" + "user_id=" + $('#user_id').val() 

您可能需要添加用於驗證user_id的邏輯(如果有)。

你甚至可以連載多種形式在一起,就像$('#form1, #form2').serialize()