Rumah  >  Artikel  >  hujung hadapan web  >  js menggunakan kaedah pos untuk membuka kemahiran window_javascript baharu

js menggunakan kaedah pos untuk membuka kemahiran window_javascript baharu

WBOY
WBOYasal
2016-05-16 16:12:471472semak imbas

Secara amnya, membuka tetingkap baharu dalam js adalah sangat mudah, hanya window.open(url) dan itu sahaja,

Tetapi kerana saya ingin menghantar parameter kepada pelayan, dan parameter tersebut kelihatan seperti rentetan yang panjang, dan panjang parameter yang diserahkan dalam kaedah get adalah terhad, jadi saya mempunyai keperluan berikut:

1. Laksanakan penyerahan jawatan dalam js

2. Halaman yang dikembalikan akan dipaparkan dalam tetingkap baharu

Mula-mula saya melakukan ini:

Salin kod Kod adalah seperti berikut:

$.ajax({
Taip: "POST",
                     url: '${contextPath}/analyse/detail.do', 
                          data: {carNum:carNum,ids:refIds}, 
Kejayaan: function(str_response) { var obj = window.open("about:blank");                                                                                                                                                                                                                                                                                                                                                                                                                                                                     });



Diserahkan melalui jQuery ajax, data yang dikembalikan ditulis dalam halaman baharu, tetapi kerana penyemak imbas akan memintas tetingkap pop timbul automatik, pengguna perlu menyahsekatnya sendiri, dan pengalaman pengguna sangat lemah,
Kemudian saya melaksanakannya dengan mensimulasikan penyerahan borang

Salin kod Kod adalah seperti berikut: jawatan fungsi(URL, PARAMS) { var temp_form = document.createElement("form");                 temp_form .action = URL;                                                temp_form .target = "_blank";
              temp_form .method = "post";                                                   temp_form .style.display = "tiada"; untuk (var x dalam PARAMS) {                                                                                                                               nama pilihan = x;                                                                        nilai opt. = PARAMS [x];                                                                       temp_form .appendChild(opt);                                                                                                                                                 document.body.appendChild(temp);                                                                                                          temp_form .submit();                                         temp_form .submit();                                                  }



Nota: Jika anda ingin membuka tetingkap baharu, atribut sasaran borang mesti ditetapkan kepada '_blank'

Kemudian minta siaran('${contextPath}/analyse/detail.do',{carNum:carNum,ids:refIds}); dan itu sahaja
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn