小编Har*_*rts的帖子

如何使用jQuery.ajax和FormData上传文件

当我使用XMLHttpRequest时,使用正确上传文件FormData.但是,当我切换到时jQuery.ajax,我的代码中断了.

这是工作原始代码:

function uploadFile(blobFile, fileName) {
    var fd = new FormData();
    fd.append("fileToUpload", blobFile);
    var xhr = new XMLHttpRequest();
    xhr.open("POST", "upload.php", true);
    xhr.send(fd);
}
Run Code Online (Sandbox Code Playgroud)

这是我不成功的jQuery.ajax尝试:

function uploadFile(blobFile, fileName) {
    var fd = new FormData();
    fd.append("fileToUpload", blobFile);
    var xm = $.ajax({
        url: "upload.php",
        type: "POST",
        data: fd,
    });
}
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?如何使用AJAX正确上传文件?

javascript ajax jquery file-upload xmlhttprequest

58
推荐指数
1
解决办法
8万
查看次数

socket将多个客户端编程到一个服务器

如何处理多个客户端连接到一台服务器?我有这个LogServer.java

import javax.net.ssl.*;
import javax.net.*;
import java.io.*;
import java.net.*;

public class LogServer {
  private static final int PORT_NUM = 5000;
  public static void main(String args[]) {
    ServerSocketFactory serverSocketFactory =
      ServerSocketFactory.getDefault();
    ServerSocket serverSocket = null;
    try {
      serverSocket =
        serverSocketFactory.createServerSocket(PORT_NUM);
    } catch (IOException ignored) {
      System.err.println("Unable to create server");
      System.exit(-1);
    }
    System.out.printf("LogServer running on port: %s%n", PORT_NUM);
    while (true) {
      Socket socket = null;
      try {
        socket = serverSocket.accept();
        InputStream is = socket.getInputStream();
        BufferedReader br = new BufferedReader(
          new InputStreamReader(is, "US-ASCII")); …
Run Code Online (Sandbox Code Playgroud)

java sockets port logging applet

56
推荐指数
4
解决办法
19万
查看次数

Cordova插件白名单失败要求cordova ios 4

我试着跑

ionic platform ios android
Run Code Online (Sandbox Code Playgroud)

它今天给了我这个错误(它之前工作正常)

Installing "cordova-plugin-whitelist" for ios
Failed to install 'cordova-plugin-whitelist':CordovaError: Plugin doesn't support this project's cordova-ios version. cordova-ios: 3.8.0, failed version requirement: >=4.0.0-dev
    at checkEngines (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/install.js:116:29)
    at /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/install.js:289:16
    at _fulfilled (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:787:54)
    at self.promiseDispatch.done (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:816:30)
    at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:749:13)
    at /usr/local/lib/node_modules/cordova/node_modules/q/q.js:557:44
    at flush (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:108:17)
    at process._tickCallback (node.js:355:11)
Plugin doesn't support this project's cordova-ios version. cordova-ios: 3.8.0, failed version requirement: >=4.0.0-dev
Run Code Online (Sandbox Code Playgroud)

android ios cordova ionic-framework ionic

19
推荐指数
1
解决办法
1万
查看次数

Firefox此页面要求您确认是否要离开

我有一个脚本,如果用户正在上传文件并尝试关闭浏览器,它将触发onb​​eforeunload()并弹出警报..我改变了消息但不知何故它在Firefox中不起作用,它在IE或Opera上运行得很好或者狩猎..代码就像

window.onbeforeunload = checkUnload;
function checkUnload() {

if (document.upload.isEmailing())
    return "Aaaa";
Run Code Online (Sandbox Code Playgroud)

因此,在IE和Opera中,当用户在发送电子邮件时关闭浏览器时,会弹出显示"AAAA"并带有"离开"或"停留页面"按钮.

但是,在Firefox中,它表明

"此页面要求您确认是否要离开 - 您输入的数据可能无法保存." 请假或留页按钮.

为什么它不起作用,我做错了什么?

注意:我使用的FF是最新版本,如果这将有所帮助.

javascript firefox

18
推荐指数
2
解决办法
2万
查看次数

在c#中将时间字符串转换为DateTime

如何根据字符串获取DateTime

例如:如果我有 mytime = "14:00"

如何DateTime以当前日期作为日期获取对象,除非当前时间已经是14:00:01,那么日期应该是第二天.

c# datetime

10
推荐指数
2
解决办法
2万
查看次数

Ionic插件需要在工作之前删除平台和readd平台

我有这样的package.json,

  "cordovaPlugins": [
    "com.ionic.keyboard",
    "org.apache.cordova.camera",
    "org.apache.cordova.console",
    "org.apache.cordova.device",
    "org.apache.cordova.dialogs",
    "org.apache.cordova.file",
    "org.apache.cordova.file-transfer",
    "org.apache.cordova.geolocation",
    "org.apache.cordova.network-information",
    "org.apache.cordova.splashscreen",
    "cordova-plugin-whitelist",
  ],
  "cordovaPlatforms": [
    "ios",
    "android"
  ]
Run Code Online (Sandbox Code Playgroud)

当我从存储库中提取时,根项目目录没有插件和平台目录.所以我运行"ionic platform add android",这将创建平台目录并安装插件.

但它不起作用,直到我再次运行"离子平台rm android"然后"离子平台添加android",突然它工作正常.

这是什么原因?以及如何解决这个问题,所以下一个开发人员可以通过运行"离子平台添加android"一次拉动回购并直接使其工作?

我正在使用最新的cordova

android cordova ionic-framework cordova-plugins

9
推荐指数
2
解决办法
3万
查看次数

更改JOptionPane中的"确定取消"字符串

我想知道是否可以在Java中将OK取消按钮更改为自定义字符串?我有

JOptionPane.showConfirmDialog(message, title, JOptionPane.OK_CANCEL_OPTION);
Run Code Online (Sandbox Code Playgroud)

此时,该按钮将显示"确定"和"取消".是否可以更改文本?例如"A"和"B"或日文文本?

谢谢

java swing joptionpane

8
推荐指数
1
解决办法
2万
查看次数

如何在未定义FormData时在Web Workers中上载文件

$_FILES当我通过Web Worker上传时,如何在PHP中检索?当我尝试使用时FormData,我收到以下错误:

错误:未定义FormData

这是我的代码:

function uploadFile(blobFile, fileName, filePart, totalChunks) {
    //if I try to put this
    //var formData = new FormData(); //it does not work
    var xhr = new XMLHttpRequest();                
    xhr.open("POST", "upload.php"+"?"+"file="+fileName + filePart, true);
    xhr.onload = function(e) {};
    xhr.send(blobFile);
}   
Run Code Online (Sandbox Code Playgroud)

所以在upload.php中,我应该如何获取tmp路径$_FILES?为了以防万一,我还将显示引用Web worker的页面:

<form id="fileuploader" enctype="multipart/form-data" method="post" action="upload.php">
    <label for="fileToUpload">Select Files to Upload</label><br />
    <input type="file" name="fileToUpload[]" multiple="" id="fileToUpload" onchange="fileList();"/><br />
    <input type="button" onclick="sendRequest();" value="Upload" />
    <!-- a place for File Listing -->
    <div id="fileList"></div> …
Run Code Online (Sandbox Code Playgroud)

javascript php html5 xmlhttprequest web-worker

8
推荐指数
1
解决办法
3541
查看次数

preg_replace导致美元符号被删除

我有一个电子邮件系统,用户在那里写一条消息并发送消息.我刚发现的主要问题是考虑这个代码

    $findEmail = $this->Data->field('body', array('id' => 1610));

    //$getUserEmailTemplate will take frm dbase and e.g: 
    //Hi, @@MESSAGE@@. From: StackOverflow
    //It should change @@MESSAGE@@ part to data from $findEmail (in this example is the $74.97 ...)

    $getUserEmailTemplate = $findUser['User']['email_template'];
    $emailMessage = preg_replace('/\B@@MESSAGE@@\B/u', $findEmail, $getUserEmailTemplate);

    debug($findEmail);
    debug($emailMessage);
Run Code Online (Sandbox Code Playgroud)

并考虑$ findemail结果的电子邮件的此输入:

$74.97
$735.00s
Run Code Online (Sandbox Code Playgroud)

$ email消息将导致:

.97
5.00s
Run Code Online (Sandbox Code Playgroud)

我怎样才能解决这个问题?我觉得我的preg_replace模式存在问题.

用户模板可以是任何东西,只要有@@ MESSAGE @@,该部分将被更改为用户消息输入.

谢谢

php regex string cakephp preg-replace

7
推荐指数
2
解决办法
2014
查看次数

从Activity完成异步后,在Fragment上填充ListView

我有一个主要活动,它将从url异步中获取JSON数据

这是MainActivity.java

public class MainActivity extends FragmentActivity implements ActionBar.TabListener{
    private ViewPager viewPager;
    private TabsPagerAdapter mAdapter;
    private ActionBar actionBar;

    //Tab titles
    private String[] tabs = {"Sermons", "More"};
    private String[] sermonsList = new String[0];

    //JSON URL for sermonList data
    private static String sermonListJSONUrl = "https://dl.dropboxusercontent.com/u/12345/index.php";

    //Variable to save JSON Object
    private static final String JSON_KEY_SERMONS = "sermon";

    private JSONObject sermonListJSONObject = null;
    private JSONArray sermonListJSONArray = null;
    SermonsFragment mSermonFragment;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //Call JSONParser Asynchronously to get …
Run Code Online (Sandbox Code Playgroud)

android android-listview android-asynctask android-fragments

7
推荐指数
1
解决办法
4458
查看次数